An extension allows you to change existing functionality, and add brand new functionality into Vanilla. Extensions can come from a variety of sources, but we’ve created a Vanilla Add-on Directory that you are welcome to browse and add to.
You can start with the Getting Started page, that will take you through:
Those pages may also help you:
The archive should contain the folder (yes, the folder itself) which holds the extension files, its contents, and nothing more or less. please check the contents of your archive before you upload it.
Extraneous files in the archive like
Thumbs.db should be removed.
default.phpshould match the one at lussumo.com/addons, so vanilla’s update check feature can find the addon.
default.phpshould match the one at lussumo.com/addons.
Installation and Upgrade instructions should be provided.
Your extension should be careful about the page where they act: processing, loading styles (.css) or scripts (.js), database accesses on each page needlessly is bad. Something like:
If your extension includes other files, particularly if it uses the Vanilla configuration settings to determine the path, you must have this line at the top of your extension:
In order to keep the custom extension settings and the core Vanilla settings distinct, it’s a good idea to make your extension configuration link in a separate menu list instead of just adding to the default options list.
$ExtensionOptions = $Context->GetDefinition('Extension Options'); $Panel->AddList($ExtensionOptions); $Panel->AddListItem($ExtensionOptions, $Context->GetDefinition('YourExtensionName'), GetUrl($Context->Configuration, 'settings.php', '', '', '', '', 'PostBackAction=YourExtensionName'));
Note that for English, you don’t have to define this entry, since the key is used for the definition if no language entry is found. Note that for best compatibility, tt would be best for other languages to translate using this key, both with and without a space.
Please feel free to list a selection of “wanted” extensions, this will give developers a better scope of what users want instead of checking the Vanilla Community every time and possibly missing someones certain thread. If someone wants to work on an extension then list your name.
|Extension||Description||Development Begun By|
|Role Icons||The ability to add an icon or a symbol to a Role which will show up on peoples account page, on discussion and comments pages, basically anywhere their name is listed. Sort of deviantART style where they have icons for certain groups, for instance the admins have a “$” whilst normal members have “~” and so on. (May want to look into Dojo Role colors and customize the stylesheet)||Nobody|
|Response Notification||An extension that will notify a user when someone posts to a thread where he has posted before (i.e. “responds”) (May want to try Notify)||Minisweeper|
|Email Notification||An extension that will notify all users of the community when a new discussion is started. (May want to try Notify)||Slayeh|
|Mark as Read||Will allow for the user to mark certain posts as read - either individually, all the posts in a certain category, or all the posts on the board. (MarkAllRead performs some of this functionality)||Nobody|
|Category Sticky||Be able to post stickies that only appear in their relevant category and not on the main discussions page.||Nobody|
|Block Discussion||Block a discussion from appearing on the discussions page, similar to blocking a category.||Nobody|
|“Create Discussion” Bookmarklet||A bookmarklet which when clicked will begin a discussion for a webpage that the browser was on and/or check if it was already created then redirect to that one||squirrel|
|Nested Comments||Addition of Nested comments option||Nobody|
|E mail of messages||Either receipt of individual e mails or a digest the day’s forum posts. Issue of reminding people the forum is there, & encouraging user participation. (Happens on >1 forum, diehard e mail users out there!)||Nobody|
|raineymAcronyms(Discussion)|| An extension that will crawl through posts and assign
|MaryTime Restrictor(Discussion)||An extension whereby when enabled all editing/posting to the forum is de-activated. No modifying or updating of the database. Includes a block on profile editing. Editing/creating/replying to discussions. Possible a small banner at the top of the forum to suggest that forum is in “read-only” mode for x amount of time.|
|Forum StatisticsVanillaZillaShortStatGoogle Analytics(Discussion)||Possibly a separate page/section which would list stats about the forum. Total discussions, total comments, total members, newest member, comments per day/month etc. Posts per minute and so on. Maybe even graphs or stats showing info on a month by month basis etc.|
|Participated Threads(Discussion)||Allows the user to view the threads they’ve participated in.|
|Dojo EditorFCKeditor(Discussion)||To help users format their posts without learning html|
|QuotationsFCKAjaxQuoteAjaxQuote(Discussion)||Allow user to quote a previous post when replying in a thread.|
|Guest Post||An extension that allow anyone visiting the forum add a comment without pre-sign up|
|Category Roles(Discussion)||Set a category so that it can only be posted in by certain roles|
|Several listed||Allows users to upload images of specified size, type, etc. to be viewed in their post.|