X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/96dab37a8e3acc58fb0ab5be0657c0e545e9684a..3d82d47e1896b8e64c1e22b09a05968fc481aebf:/doc/plugins/write.mdwn diff --git a/doc/plugins/write.mdwn b/doc/plugins/write.mdwn index 12bd33662..686f7e518 100644 --- a/doc/plugins/write.mdwn +++ b/doc/plugins/write.mdwn @@ -348,6 +348,56 @@ This hook is called whenever ikiwiki normally saves its state, just before the state is saved. The function can save other state, modify values before they're saved, etc. +## renamepage + + hook(type => "renamepage", id => "foo", call => \&renamepage); + +This hook is called by the [[plugins/rename]] plugin when it renames +something. The hook is passed named parameters: `page`, `oldpage`, +`newpage`, and `content`, and should try to modify the content to reflect +the name change. For example, by converting links to point to the new page. + +### getsetup + + hook(type => "getsetup", id => "foo", call => \&getsetup); + +This hooks is not called during normal operation, but only when setting up +the wiki, or generating a setup file. Plugins can use this hook to add +configuration options. + +The hook is passed no parameters. It returns data about the configuration +options added by the plugin. It can also check if the plugin is usable, and +die if the plugin is not available, which will cause the plugin to not be +offered in the configuration interface. + +The data returned is a list of `%config` options, followed by a hash +describing the option. For example: + + return + option_foo => { + type => "boolean", + description => "enable foo", + safe => 1, + rebuild => 1, + }, + option_bar => { + type => "string", + example => "hello", + description => "what to say", + safe => 1, + rebuild => 0, + }, + +* `type` can be "boolean", "string", "integer", "internal" (used for values + that are not user-visible). The type is the type of the leaf values; + the `%config` option may be an array or hash of these. +* `example` can be set to an example value. +* `description` is a short description of the option. +* `safe` should be false if the option should not be displayed in unsafe + configuration methods, such as the web interface. Anything that specifies + a command to run, a path on disk, or a regexp should be marked as unsafe. +* `rebuild` should be true if changing the option will require a wiki rebuild. + ## Plugin interface To import the ikiwiki plugin interface: @@ -573,12 +623,15 @@ time. This is the standard gettext function, although slightly optimised. -#### `urlto($$)` +#### `urlto($$;$)` Construct a relative url to the first parameter from the page named by the second. The first parameter can be either a page name, or some other destination file, as registered by `will_render`. +If the third parameter is passed and is true, an absolute url will be +constructed instead of the default relative url. + #### `targetpage($$)` Passed a page and an extension, returns the filename that page will be