Diff: Help/HelloWorldPlugin
Differences between current version and predecessor to the previous major change of Help/HelloWorldPlugin.
Other diffs: Previous Revision, Previous Author
Newer page: | version 5 | Last edited on October 14, 2015 11:47 am | by PhilHollenback | |
Older page: | version 4 | Last edited on February 23, 2012 2:52 pm | by PhilHollenback | Revert |
@@ -8,9 +8,9 @@
<<HelloWorld salutation="Hello," name="Wiki User" >>
}}}
----
-~PhpWiki's plugin architecture allows you to add custom page elements to your wiki. All you have to do is extend (subclass) the ~WikiPlugin class and create your output via the run() method, dependend
on the Wiki- or Request arguments,
+~PhpWiki's plugin architecture allows you to add custom page elements to your wiki. All you have to do is extend (subclass) the ~WikiPlugin class and create your output via the run() method, dependent
on the Wiki- or Request arguments,
* either with the predefined HTML classes to create valid XHTML,
* or by using templates, which are easier customizable, but generally more a mess to use and easier to create invalid XHTML.
@@ -57,9 +57,9 @@
extract($this->getArgs($argstr, $request));
// Any text that is returned will not be further transformed,
// so use html where necessary.
- $html = HTML::tt
(fmt('%s: %s', $salutation, WikiLink($name, 'auto')),
+ $html = HTML::samp
(fmt('%s: %s', $salutation, WikiLink($name, 'auto')),
THE_END);
return $html;
}
};
current version
A simple example plugin.
Hello,, Wiki User!From the source of this page:
<<HelloWorld salutation="Hello," name="Wiki User" >>
PhpWiki's plugin architecture allows you to add custom page elements to your wiki. All you have to do is extend (subclass) the WikiPlugin class and create your output via the run() method, dependent on the Wiki- or Request arguments,
- either with the predefined HTML classes to create valid XHTML,
- or by using templates, which are easier customizable, but generally more a mess to use and easier to create invalid XHTML.
/**
* A simple demonstration WikiPlugin.
*
* Usage:
* <<HelloWorld> >
* <<HelloWorld
* salutation="Greetings, "
* name=Wikimeister
* > >
* <<HelloWorld salutation=Hi > >
* <<HelloWorld name=WabiSabi > >
*/
// Constants are defined before the class.
if (!defined('THE_END'))
define('THE_END', "!");
class WikiPlugin_HelloWorld
extends WikiPlugin
{
// Five required functions in a WikiPlugin.
function getName () {
return _("HelloWorld");
}
function getDescription () {
return _("Simple Sample Plugin");
}
// Establish default values for each of this plugin's arguments.
function getDefaultArguments() {
return array('salutation' => "Hello,",
'name' => "World");
}
function run($dbi, $argstr, $request) {
extract($this->getArgs($argstr, $request));
// Any text that is returned will not be further transformed,
// so use html where necessary.
$html = HTML::samp(fmt('%s: %s', $salutation, WikiLink($name, 'auto')),
THE_END);
return $html;
}
};