{|align="right" |- | __TOC__ |} = Codex Wiki Plugins = == Introduction == Codex comes bundled with a set of custom wiki plugins that can be used in any wiki page by following the following syntax: {{{PluginName arg1="" arg2="" ...}}} Basically, you create a tag with the name of the plugin to use and then just create arguments of name-value pairs of whatever arguments the plugin's '''renderit()''' method takes in. == A Wiki Plugin == Creating wiki plugins are very easy. Just drop them in the '''/App/plugins/wiki''' folder and you are ready to start using them in your wiki pages. A wiki plugin is exactly just like any other ColdBox plugin. [http://ortus.svnrepository.com/coldbox/trac.cgi/wiki/cbPluginsGuide ColdBox Plugin Guide]. === Rules === # Plugin component must extend ''coldbox.system.plugin'' and implement the coldbox plugin init() method. # Plugin can just implement the ColdBox init() method with no inheritance, but will not be able to tap into the framework's supertype's methods. It will have to do everything via the injected controller. # Plugin must implement a method called '''renderit()'''. ## This method can have 1 or more arguments. == Example == So if we have a plugin called '''DateTime''', it's source code can look like this: super.Init(arguments.controller); setpluginName("DateTime"); setpluginVersion("1.0"); setpluginDescription("A date time wiki plugin"); //My own Constructor code here //Return instance return this; And we can use it in our wiki pages like so: //Initial space is left so wiki doesn't match and you can see the source {{{ Messagebox message="Hello World!"}}} That's it. Welcome to the world of Codex Wiki Plugins. Now go out and start coding your very own plugins. Below you can see a plugin at work: {{{WikiPlugins}}}