[dokuwiki] New Release of plugins and new helper plugin type

  • From: "Esther Brunner" <wikidesign@xxxxxxxxx>
  • To: dokuwiki@xxxxxxxxxxxxx
  • Date: Tue, 12 Dec 2006 22:09:23 +0100

Hi all

There's a new release 2006-12-12 available of the following plugins:

 * Blog - requires Include and Pagelist plugins
 * Discussion - requires Pagelist Plugin
 * Editor - requires Pagelist Plugin
 * Feed (new) - extends Blog, Discussion, Editor and Tag plugins
 * Include - required for Blog Plugin
 * Pagelist (new) - required for Blog, Discussion, Editor and Tag plugins
 * Tag - requires Pagelist Plugin

Download: http://www.wikidesign.ch/en/plugin/start

I fixed all known bugs in these plugins and for sure introduced some
new ones ;-). But the main point is a change in architecture.

As you can see, these plugins are quite interdependent. Before, every
plugin had its own routines to list pages in a nice table or to offer
feeds. But similiar, not identical, code is a nightmare to maintain.
So I decided to introduce helper plugins - plugins that help other
plugins to perform a certain task. This has the advantage that when,
for example, the Pagelist Plugin is improved, all plugins using it do
profit.

The new helper plugin type is just a class (in helper.php) that
inherits from the base plugin class, so it can access the plugins'
language strings and configuration settings. No changes to DokuWiki
are necessary. It's easy to use other plugins, see an example here:
http://wiki.splitbrain.org/plugin:pagelist

Take a look at the list of helper plugin methods offered by my plugins:
http://www.wikidesign.ch/en/plugin/helper_plugins

One thing I'm not yet sure about, is whether helper plugins, that are
required for another plugin, should be bundled. I think Chris
mentioned once, the plugin manager could handle installing multiple
plugins at once, but would it check if the installed version was newer
or would it just overwrite?

-- esther
--
DokuWiki mailing list - more info at
http://wiki.splitbrain.org/wiki:mailinglist

Other related posts: