Due to some additional features in Movable Type 3.2, Webiki is easy to install. You should check the Webiki Requirements before starting, however.

NOTE: This is a beta release. I have it in production use (such as, on this weblog) but it has not been field tested.

Get the distribution

You can get the zipped distribution here. Download it and unzip it. It should create a single directory tree.

Install

Copy the unpacked distribution tree to a directory named “Webiki” in the “plugins” directory of your Movable Type installation.

Initial Configuration

Go to the main menu of your Movable Type installation and click the “Plugins” link. Webiki should appear as one plugins. Open on the settings and verify that there is not a message that Webiki failed to create the database tables.

By default, Webiki is not active - the “Wordspace” setting is set to “None”. You will need to set that to something else before any Webiki words will work. See Configuring Webiki for details on what the settings mean.

Enable Webiki formatting

Webiki needs access to the text of an entry in order to convert Webiki Words to links. There are two ways to do this.

  • Use “Webiki” as the formatting for the entry. Webiki provides a text formatter for this purpose. This can be difficult, because MT supports only a single text formatter for an entry. On my weblogs, I use FormatStack to get around this problem.
  • The other alternative is to change your templates by adding the attribute webiki="1" to any text generating tag you want Webiki to modify. Webiki supplies a global text filter to make this work.

Webiki should now be installed. See Using Webiki for how to use Webiki and Configuring Webiki for details on how to configure Webiki.

For the adventurous, there is one issue in Webiki that can be fixed with a simple patch to Movable Type. During preview, the current entry is not excluded from multi-target Webiki words. This is because the identity of the entry is not provided during preview. This can be fixed by adding a line to lib/MT/App/CMS.pm, after line 6014:

Change

    my $entry = MT::Entry->new;
    $entry->title($q->param('title'));
    ## Strip linefeed characters.

to

    my $entry = MT::Entry->new;
    $entry->title($q->param('title'));
    $entry->id($id); # <=== ADD THIS LINE
    ## Strip linefeed characters.