]> sipb.mit.edu Git - ikiwiki.git/blob - doc/plugins.mdwn
ec7ee59147023435a5b1d5c4f83d818bac9c2a0a
[ikiwiki.git] / doc / plugins.mdwn
1 Plugins can be used to add additional features to ikiwiki. The interface is quite flexible, allowing plugins to register [[PreProcessorDirective]]s, hook into [[CGI]] mode, and more. Ikiwiki's backend RCS support is also pluggable, so support for new revision control systems can be added to ikiwiki. 
2
3 There's documentation if you want to [[write]] your own plugins, or you can install and use plugins contributed by others. 
4
5 The ikiwiki package includes some standard plugins that are installed and
6 by default. These include [[inline]], [[pagecount]], and [[brokenlinks]], and [[search]]. Of these, [[inline]] is enabled by default.
7
8 To enable other plugins, use the `--plugin` switch described in [[usage]],
9 or the equivalent line in [[ikiwiki.setup]].
10
11 ## Plugin directory
12
13 Add your contributed plugins here.
14
15 [[inline pages="plugins/* !plugins/write !*/Discussion" archive="yes" rootpage="plugins/contrib" show="30"]]
16
17 ## Installing third party plugins
18
19 Plugins are perl modules and should be installed somewhere in the perl
20 module search path. See the @INC list at the end of the output of `perl -V`
21 for a list of the directories in that path. All plugins are in the
22 IkiWiki::Plugin namespace, so they go in a IkiWiki/Plugin subdirectory
23 inside the perl search path. For example, if your perl looks in
24 `/usr/local/lib/site_perl` for modules, you can locally install ikiwiki
25 plugins to `/usr/local/lib/site_perl/IkiWiki/Plugin`