PhpWikiManual

This is the user manual for PhpWiki 1.6.4.

Included from Help/PhpWiki

You are using PhpWiki at this very moment. Incredible, ain't it?

Visit our home page at https://sourceforge.net/projects/phpwiki/ and see PhpWiki in action at http://phpwiki.demo.free.fr (and of course here too :)).

Included from Help/WikiWikiWeb

A WikiWikiWeb is a site where everyone can collaborate on the content. The most well-known and widely used Wiki is the Portland Pattern Repository at http://c2.com/cgi-bin/wiki?WikiWikiWeb.

You and I will find these statements there particularly relevant:

The point is to make the EditText form simple and the FindPage search fast.

In addition to being quick, this site also aspires to Zen ideals generally labeled WabiSabi. Zen finds beauty in the imperfect and ephemeral. When it comes down to it, that's all you need.

The Universe tends toward chaos. The Universe tends toward Wiki.

You can say hello on RecentVisitors, or read about HowToUseWiki and AddingPages. So go ahead and play with it and have fun!!

-- Steve Wainstead

Included from Help/Steve Wainstead

Hi. I started building this WikiWikiWeb but many others help me now. I'm at http://www.panix.com/~swain/.

Please report bugs to phpwiki-talk@lists.sourceforge.net.

Included from Help/WabiSabi

Since wabi-sabi represents a comprehensive Japanese world view or aesthetic system, it is difficult to explain precisely in western terms. According to Leonard Koren, wabi-sabi is the most conspicuous and characteristic feature of what we think of as traditional Japanese beauty and it “occupies roughly the same position in the Japanese pantheon of aesthetic values as do the Greek ideals of beauty and perfection in the West.”

“Wabi-sabi is a beauty of things imperfect, impermanent, and incomplete.”

“It is the beauty of things modest and humble.”

“It is the beauty of things unconventional.”

(quoted from “WABI-SABI: FOR ARTISTS,DESIGNERS, POETS & PHILOSOPHERS,” 1994, Leonard Koren)

The concepts of wabi-sabi correlate with the concepts of Zen Buddhism, as the first Japanese involved with wabi-sabi were tea masters, priests, and monks who practiced Zen. Zen Buddhism originated in India, traveled to China in the 6th century, and was first introduced in Japan around the 12th century. Zen emphasizes “direct, intuitive insight into transcendental truth beyond all intellectual conception.” At the core of wabi-sabi is the importance of transcending ways of looking and thinking about things/existence.

  • All things are impermanent
  • All things are imperfect
  • All things are incomplete

(also taken from WABI-SABI: FOR ARTISTS,DESIGNERS, POETS & PHILOSOPHERS, 1994, Leonard Koren):

Material characteristics of wabi-sabi:

  • suggestion of natural process
  • irregular
  • intimate
  • unpretentious
  • earthy
  • simple

For more about wabi-sabi, see http://c2.com/cgi/wiki?WabiSabi.

Included from Help/WikisUsingPhpWiki

Here are some wikis using PhpWiki:

URL PhpWiki release Theme
http://alsach.at/phpwiki/ 1.4.0RC1 default
https://bh.hallikainen.org 1.6.0 Sidebar
http://www.carnatic.com/karmasaya/
http://churchofvirus.org/wiki/ 1.3.2-jeffs-hacks Virus (custom)
http://crossfamily.me.uk/wiki/ 1.2.7
http://www.dairiki.org/HammondWiki/ 1.3.5pre default
https://dev.cmeerw.org 1.6.1 Sidebar
http://dkbush.com/zphpwiki/ 1.3.14
http://drtedwilliams.net/kb/ 1.3.14 MacOSX
http://e38.org/phpwiki/ 1.3.14
http://echolalie.org/wiki/index.php?EcholaListes
http://forge.cesga.es/wiki/g/optimiza/ Fusionforge
http://forkedcedarandscuppermongfarm.com/phpwiki/ 1.2.10
https://garage.maemo.org/plugins/wiki/index.php?id=290&type=g Gforge
https://gforge.irsn.fr/gf/project/redice/wiki/ Gforge
http://gforge.wits.ac.za/gf/project/vre/wiki/ Gforge
https://www.gidley.co.uk/wiki/
http://glhrn.org/NoPlaceToGo/ 1.4.0RC1 Sidebar
http://gouwm.com/wiki/ 1.2.11
http://hollenback.net 1.5.4 Sidebar
https://kcpralumni.org/wiki/ 1.6.0 Sidebar
http://kqlives.sourceforge.net/ 1.3.14 kq (custom)
http://math.drhuang.com/wiki/Index.php/HomePage 1.4.0RC1 Sidebar
http://matthieuachard.free.fr/wiki/ 1.2.10
http://meanwhile.sourceforge.net/wiki/ 1.4.0RC1 MonoBook
http://mtswiki.westwood-tech.com/mtswiki-index.php/HomePage 1.6.0 Sidebar
http://mupad-combinat.sourceforge.net/Wiki/AboutWiki.html default
http://muthanna.com/looperng/tutorial/HelpPages.html ?? (wikidump)
http://netfrag.org/rrr/wiki/ 1.5.5 Sidebar
http://nukemclan.free.fr 1.2.10
http://ohg82er.de/wiki/ 1.3.2-jeffs-hacks DigiLog (custom)
http://oldwiki.gnustep.org 1.3.2-jeffs-hacks
http://people.biology.ucsd.edu/bshanks/hosting/work/papers/symSysHonorsThesis/talkSlides/biw.html 1.3.5pre default
http://raczkowscy.prv.pl 1.2.10
http://rec-puzzles.org 1.3.11p1 default
https://senseis.xmp.net
http://squibbett.vacationhomesonnantucket.com/wiki/ 1.2.11
http://swimuu.org/cu2c2-board/
https://tdwg.napier.ac.uk 1.3.10 default
http://the-bees-knees.info/phpwiki/ 1.5.4 default
http://utenmelk.no/wiki2/ 1.6.0 Wordpress
http://wac-tk.drni.de 1.3.11p1 Crao
https://wiki.cyberleo.net 1.5.5 MacOSX
http://wiki.elaboratedsolutions.com 1.2.11
http://wiki.wlug.org.nz 1.3.11p1 WLUG05 (custom)
http://www.allpsych.uni-giessen.de/wikidump/HomePage.html ?? (wikidump)
http://www-bd.lip6.fr/ens/li345-2011/index.php/Accueil 1.4.0RC1 default
https://www.cs.helsinki.fi/group/keltsi/wikidumphtml/HomePage ?? (wikidump)
https://www.gidley.co.uk/wiki/
http://www.student.nada.kth.se/gecco/phpwiki/
http://xmlhack.ru/protva/xquery/index.php/ 1.3.2-jeffs-hacks

See also

Included from Help/AddingPages

Adding pages

To add a new page to the wiki, all you have to do is come up with a meaningful title and put it between [[double brackets]].

Then you can go ahead and click the question mark at the end of your new hyperlink, and the Wiki will give you a window for making the new page.

The page name can contain any character, except:

  • angle brackets (<>),
  • square brackets ([]),
  • curly brackets ({}),
  • double quotes ("),
  • pipe (|),
  • and hash sign (#) that is used for anchors.

If you wish to add documents with complex markup to the wiki, you might be better off providing a URL to it than trying to add the text of the document here, like so:

[[http://phpwiki.sourceforge.net/|PhpWiki project homepage]]

PhpWiki project homepage

The Wiki does not support most HTML tags, only the simplest. See TextFormattingRules. <tags>They will just render like text.</tags> Wiki is meant to be as simple as possible to encourage use.

Note that there is a feature that your system administrator can enable to allow embedded HTML, but there are security risks involved.

Removing pages

Removing a page will clear all it versions. The history of the page will still be visible and the removal will appear in the RecentChanges. It will be possible to restore the page by creating a new version; in that case, all previous versions will be restored.

You must be logged as administrator to be able to remove a page.

Purging pages

Purging a page will delete it with all its versions without any possibility to restore it. Purging will not appear in the RecentChanges.

You must be logged as administrator to be able to purge a page.

Included from Help/EditText

All pages have an Edit link. You can edit the page you are reading by clicking that link.

Included from Help/GoodStyle

“Young writers often suppose that style is a garnish for the meat of prose, a sauce by which a dull dish is made palatable. Style has no such separate entity; it is nondetachable, unfilterable. The beginner should approach style warily, realizing that it is himself he is approaching, no other; and he should begin by turning resolutely away from all devices that are popularly believed to indicate style--all mannerisms, tricks, adornments. The approach to style is by way of plainness, simplicity, orderliness, sincerity.”

--Strunk and White, “The Elements of Style”

And thus an American textbook, typical required reading for 10th-grade English students, unknowingly extols some virtues of Wabi Sabi.

--scummings

Included from Help/GoogleLink

A new UserPreferences setting to optionally add a [G] link to unknown pages, with a link to Google:[pagename]. Default: Off

See MeatBall:GooglePrompt

Included from Help/HowToUseWiki

“Wiki wiki” means “quick” in Hawai'ian.

All you really need to know is:

  • To edit any page click on the Edit. You should do that right now, and read the source code of this page. It will make more sense.
  • You get italics by surrounding words with two slashes on either side like this.
  • You get bold text by using two asterisks on either side.
  • And, bold italics by using both.
  • You get monospaced text by using two hash signs on either side.
  • You get bullets by using an asterisk * at the start of the line.
  • To have a paragraph in plain monospaced font, start it with {{{ and end it with }}}:
  this is a poem for sure
  about monospacing
  i wrote in purple velour
  but couldn't find a rhyme for monospacing
  • You separate paragraphs with an extra blank line. Example:

I am a paragraph.

I am a paragraph too. We're just very small paragraphs.

  • You can get horizontal rules with four or more dashes like this:

  • To create hyperlinks you just capitalize the words and string them together. Let's say you want to create a page about how Steve Wainstead eats worms. All you have to do is capitalize each word and string them together like this: SteveWainsteadEatsLiveWorms. If the page does not exist yet a question mark appears after the link, inviting you to create the page: ThisPageShouldNotExist. (And please don't ruin the example by creating one.)
  • To link to pages outside the Wiki, you can just type in the URL and Wiki will link it for you: http://www.nytimes.com/
  • To put images in, just provide the hyperlink in brackets like this: [[http://www.yourhost.yourdomain/images/picture.png]]. Image URLs not in brackets will just appear as hyperlinks to the image.
  • Now you are ready to begin adding pages.

A WikiWikiWeb is meant to be fast and easy to edit. It has very simple markup that you can read about in Help:TextFormattingRules.


If you don't like the size of the text editing window you get, you can change it. See UserPreferences.

Included from FindPage

Here are some good starting points for browsing.

Title Search

Here's a title search. Try something like wiki or sandwich.

    case_exact regex 

Full Text Search

Use the following for a full text search. The results will show all lines on a given page which contain a match.

    case_exact regex 

Fuzzy Search

In a fuzzy pages search the titles of all pages are examined to find those which are similarly spelled or similar sounding (English).

    case_exact 

Tips

  • Separate words with a space. All words have to match as substrings.
  • 'OR', grouping with parenthesis, string-quoting and some glob-style wildcard characters are also supported.
  • To exclude words from a title search or full text search, prepend a '-'.
  • Use '^xx' or 'xx*' to match words starting with 'xx'.
  • Use '*xx' or 'xx$' to match words ending with 'xx'.
  • Use '^word$' to match exact words.
  • Use regex=auto and 're:' like 're:word.*xx' or regex=posix to use Posix regular expressions. (not yet)
  • Use regex=auto and '//' like '/^word$/' or regex=pcre to match using Perl-style regular expressions.
  • Use regex=sql to match using SQL-style wildcards '%' and '_'.
  • Use regex=none to match any wildcards verbatim.

Example

  • 'wiki text -php' looks for all pages containing the words 'wiki' and 'text', but not containing the word 'php'.

PhpWikiDocumentation

Included from Help/Images

You can easily use images in the wiki.

Uploaded images

First, image files need to be uploaded in the wiki. For that purpose, you will use the UpLoad plugin.

Toolbar

Once the image is uploaded, the easiest way to insert it is to use the toolbar.

Click on the Insert Image or Video icon and you will be shown a list of available images.

Select an image and click Insert. The image will be inserted without options or alternative text.

TOOLBAR_IMAGE_PULLDOWN must be set to true for the icon to appear in the toolbar (default).

Syntax

You give access to the uploaded image with the following syntax.

{{myimage.png}}

or

[[Upload:myimage.png]]

will inline the image.

{{myimage.png|this is the alt text for my image}}

inlines the image with an alternative text.

[[some link|{{myimage.png}}]]

if you click on the image, will goto "some link"

[[some link|{{myimage.png|alt text}}]]

same with alternative

[[http://example.com/|{{myimage.png}}]]

same as above: picture links to url

[[http://example.com/|{{myimage.png|alt text}}]]

same with alternative

Upload:myimage.png

shows a plain link

[[Upload:myimage.png | my image]]

shows the image under a link named "my image".

For Mediawiki compatibility, the keyword Upload: can be replaced by File: or Image:.

Options

Using the Upload: syntax, options are allowed to change the appearance:

[[Upload:myimage.png size=40x25 align=center]]

Separate options by spaces. The allowed options are the following:

  • size: width "x" height or num + "%"
  • align: string
  • border: number
  • hspace: number
  • vspace: number

URL images

You can also use "external" images by providing a URL.

In that case, you simply put the URL between double brackets or double curly brackets:

[[http://phpwiki.demo.free.fr/themes/default/images/poweredby_phpwiki_51x31.png]]

or

{{http://phpwiki.demo.free.fr/themes/default/images/poweredby_phpwiki_51x31.png}}

will give:

See Also

Included from Help/Categories

Categories are a way to group pages that are related to the same subject. They provide an easy way to browse the wiki.

In Phpwiki, categories are not stored in a separate namespace like in Mediawiki for instance. A category is a page with a name that begins with “Category” and contains a call to the BackLinks plugin.

Creating a new category

The simplest way to create a new category is to to go the CategoryCategory page.

Enter its name (starting with “Category”) and hit “CreatePage” button.

This will automatically insert the necessary plugins calls.

You might want to add at the beginning of the page a paragraph explaining the purpose of the category.

Suppose you want to create a category called CategoryFruit. You might add:

This Category groups the different kinds of fruit.

By default, the new category is created as a subcategory of CategoryCategory (the “root” category). You might want to change this (see below “Category hierarchies”).

Putting a page in a category

To put the article banana in CategoryFruit, you have to put at the end of the page:

----
[[CategoryFruit]]

The CategoryFruit page will then display your text describing the purpose of the category, then the list of pages in the category.

The can be done very easily by using the Insert Categories button of the edit toolbar when editing the page.

Category hierarchies

The simplest way to use categories is to use “flat” categories. But you can also build a hierarchy of categories by putting categories themselves in categories.

For example, you can put the [[CategoryFruit]] in [[CategoryFood]] instead of default [[CategoryCategory]].

Tips and tricks

  • Page CategoryCategory is the root category. All categories should be subcategories of this category (recursively).
  • If in a page you need to refer to a category, you should add a semi-colon: [[:CategoryFruit]]. This will create a link to the category without putting the page in the category (which would be the case if using [[CategoryFruit]]).
  • You can put a page in several categories if needed.

PhpWikiDocumentation

Included from Help/InterWiki

This wiki supports InterWiki links in a style copied from UseMod: wiki. Links to pages in other wikis can be made without having to know or type the full URLs, for example: MeatBall:InterWiki will link to the page named "InterWiki" at Meatball wiki.

The InterWiki map is taken from the the <verbatim> block in InterWikiMap, but that page must be locked for it to work. This denies a potential hacker the ability to nefariously change every InterWiki link to point to some evil URL. If no map is found in InterWikiMap (or the page is not locked), PhpWiki will fall back to using the file lib/interwiki.map in your phpwiki distribution. The InterWiki map file in use at PhpWiki: can be viewed at http://phpwiki.sf.net/interwiki.map.

The map file is manually updated. It is based upon and periodically synchronized with UseMod's InterMap but it is not quite identical. One notable difference from UseMod: is that PhpWiki supports '%s' within the URLs in the map--see the entry for RFC for an example of how this works.

Not all of the entries in the InterWikiMap are actual wikis. For example, these are just regular web sites: Dictionary:fungible, JargonFile:Alderson loop, IMDB:Roman Holiday, RFC:2822, and ISBN:020171499X.

The "Category" moniker is a special entry which allows one to link a wiki page to a Category page without creating a back-reference. Thus Category:Category links to the CategoryCategory page, yet this page won't show up in the back-links listing of CategoryCategory.

The term "InterWiki" also refers to a broader concept. See InterWikiSearch for more links.


PhpWikiDocumentation

Included from Help/LinkIcons

LinkIcons are an optional feature of PhpWiki. When activated, icons will be displayed in front of URLs to indicate the type of link.

http link
generic internet link
Interwiki link
https link
mailto link
ftp link

Examples

The following examples will display with the above link icons only if the administrator has enabled this feature.

InterWiki links

URLs

A generic icon is shown for other less common link types.

LinkIcons will only display when the URL protocol is one which PhpWiki is allowed to link to. The following examples won't show any icons and PhpWiki won't automatically provide double-clickable links either, unless the administrator adds them:

  • bogus://oedipus.nostradamus.com
  • bolo://lgm.cheshire.org

Included from Help/PredefinedIcons

Phpwiki allows you to easily include some predefined icons in your wiki pages.

The following icons are available:

Notation {{:)}} {{:(}} {{:P}} {{:D}} {{;)}} {{(y)}} {{(n)}}
Image :) :( :P :D ;) (y) (n)
Notation {{(i)}} {{(/)}} {{(x)}} {{(!)}} {{(+)}} {{(-)}} {{(?)}}
Image (i) (/) (x) (!) (+) (-) (?)
Notation {{(on)}} {{(off)}} {{(*)}} {{(*r)}} {{(*g)}} {{(*b)}} {{(*y)}}
Image (on) (off) (*) (*r) (*g) (*b) (*y)

Included from Help/WikiPlugin

A plugin is some PHP code that:

  • lives in phpwiki/lib/plugin/<pluginname>.php
  • implements the WikiPlugin interface by extending that class.

There are many plugins already distributed with PhpWiki. Simply look in the lib/plugin directory or see the PluginManager list or see all the Help/*Plugin pages.

To write your own, look at the Help:HelloWorldPlugin (HelloWorld.php in that directory), which is a minimal example of a plugin.

A WikiPlugin allows one to easily add new types of dynamic content (as well as other functionality) to wiki pages within PhpWiki. In this very wiki all actions which are not entirely lowercased are implemented using plugins, and some lowercased convenience actions also (rename, revert, setacl, diff, ...)

Note that you can NOT extend the markup syntax with a plugin, as in other wiki engines.

Example

Currently, one invokes a plugin by putting something like:

<<AllPages limit=20 cols=3>>

into a regular wiki-page. That particular example produces a list of the first 20 existing pages in 3 columns, via the PageList library.

All pages in this wiki (280 total):

|<<   << - 1 / 14 - Next >>   >>|

Details

Plugins can take certain named arguments, most do. The values of these arguments can be determined four different ways. In order of precedence:

  1. The plugin invocation can specify the value for an argument, like so:

    <<BackLinks page=OtherPage>>
  2. The argument can be specified via an HTTP query argument. This doesn't happen (is not allowed) unless the argument is mentioned in the plugin invocation:

    <<BackLinks page>>
  3. Default values specified in the plugin invocation:

    <<BackLinks page||=OtherPage>>
  4. The plugin must supply default values for each argument it uses. Such default args may be overriden by URL arguments like so:

      BackLinks?page=ThisPage&sortby=-mtime

    (The BackLinks plugin uses the current page as the default value for the page argument.)

    Most plugins using the PageList library inherit their default arguments from the PageList.

Standard Arguments

Most plugins display a list of pages, via the PageList library. PageList provides automatic support for those arguments.

info, exclude, author, owner, creator, sortby, limit, paging, cols, azhead, comma, commasep, ordered

For details see the PageList library documentation.

exclude and pages accept a list of pages. Either as comma-separated list, supporting glob-style wildcards, or via the <!plugin-list pluginname [args] !> invocation syntax, where pluginname might be any plugin returning a PageList.

Since most plugins return a PageList, this PageList is also a common input parameter for other plugins, actions or formats.

Basic Plugin Types

All these plugins derive from the WikiPlugin class extending the run method, which returns a object tree of HTML objects, and may react on any provided arguments from the WikiPage (see the args below) or optionally overridden by arguments from the url (GET or POST args), if defined via '||='.

A basic plugin just needs the run() method, and optionally getName, getDescription, getDefaultArguments. See the Help:HelloWorldPlugin for a short introduction.

plugin reacts on its arguments and the request and displays arbitrary HTML.

plugin-form is used to display a input type=text box for the default argument s.

plugin-list is used as argument to provide a dynamic list of pagenames.

  <?plugin PluginName [args...] ?>
  <?plugin-form PluginName [args...] ?>
  <?plugin PluginName args=<!plugin-list pluginname [args...] !> ?>

The box Method

Themes based on the "sidebar" theme may use the box method of any plugin, which displays a title and a condensed content in a box.

WikiPluginCached

Plugins deriving from the class WikiPluginCached must also define the methods getPluginType(), optionally getExpire(), managesValidators(), and dependent of the getPluginType the methods to display the possibly cached result.

getImage(), getMap() or getHtml(),

optionally also

getAlt(), getImageType(), embedMap(), embedImg(), embedObject()

See the config.ini PLUGIN_CACHED_* settings and WikiPluginCached

Action Pages

The term ActionPage refers to a page containing a plugin invocation with the same or translated pluginname as the pagename. An action is together with the pagename argument the basic PhpWiki argument. It can both be GET or POST actions. Actions are untranslated, always English, pagenames can be localized. Basic (and old) actions are all lowercase, like edit, browse, remove, ... Newer actions in CamelCase are invoked via plugins on their specific action page.

We decoupled actions from plugins via action pages for the following reasons:

  1. Support translated action buttons and customizable action descriptions.
  2. Customize standard actions by tuning the plugin invocation arguments. Override or add plugin defaults.
  3. Split simple plugins into multiple actions, like RecentChanges/RecentEdits, MostPopular/LeastPopular, AllPages/AllPagesCreatedByMe/AllPagesLastEditedByMe/ AllPagesOwnedByMe which differ only in one argument.
  4. Simplify the syntax for actions on another actions using a PageList as result of an actionpage as input parameter for another action or format.
  • Those actions which have buttons or links in the theme or are referenced in the standard pgsrc pageset require their (possibly localized) actionpages, otherwise the actions will not work.
  • If the localized actionpage is not found the english version is used.
  • If no actionpage is found, it is recommended to do action=upgrade, which imports all missing and required action pages into the database.

So for a hypothetical new MyActionPage plugin MyActionPage will invoke the plugin and Help:MyActionPagePlugin should be the description page.

Existing Plugins

See PluginManager for a detailed list. Most plugins should have their own description page as subpage of Help/ with the name Plugin appended.


PhpWikiDocumentation

Included from Help/MagicPhpWikiURLs

About phpwiki: URLs

A special type of URL is available for making links to perform administrative and other special functions in PhpWiki. Here is a brief description of how they work.

The basic syntax of a phpwiki: URL is

phpwiki:pagename?query-args

If pagename is omitted it defaults to the current page.

Query-args should be a set of parameters in standard HTTP GET format.

The "action=x" parameter should almost always be given. It can be one of browse, diff, edit, viewsource, zip, dumpserial, loadserial, remove, lock, unlock, login, logout, setprefs or save. The default action is browse.

Some of the actions accept other parameters.

FullTextSearch, TitleSearch Accepts s=search term, and size=input size.
edit Accepts version.
remove Accepts verify.
save Accepts editversion, minor_edit and content.
setprefs Accepts edit_area_width and edit_area_height.

Writing Magic Links in Wiki Pages

A magic link looks like:

[[ text | phpwiki-url ]]

The "text |" is optional but usually recommended. If given it will provide the label for the link.

The phpwiki-url is a phpwiki: URL as described above.

Some examples

[[phpwiki:SandBox?action=edit|Edit the SandBox]]

will generate a link which will take you directly to editing the SandBox, like so: Edit the SandBox.

Other possibilities:

Writing Magic Forms in Wiki Pages

Note: The old syntax for Magic forms is no longer supported. They are superseded by <?plugin-form>.

If the plugin is called using <?plugin-form instead of <?plugin and the plugin supports searching, then it will be rendered as a form.

size If given, specifies the size of the input area.
s Specifies the default value for the input.

Examples

A search plugin invoked with <?plugin instead of <?plugin-form simply inserts the search results of the plugin:

<<TitleSearch s=wiki noheader=true limit=10>>

Search results for Page titles containing 'wiki':

|<<   << - 1 / 1 - >>   >>|
|<<   << - 1 / 1 - >>   >>|
<?plugin-form FullTextSearch ?>

gives

While

<?plugin-form TitleSearch formsize=12 ?>

yields

Included from Help/MoreAboutMechanics

PhpWiki is written in the server-side scripting language PHP, available from https://www.php.net/. PHP resembles C and Perl in its syntax, and functions much like ASP, EmbPerl or JSP.

PhpWiki consists of a dozen or so files of mixed PHP and HTML. The web pages that make up a WikiWikiWeb based on PHP live in a database with backup copies of previous versions of pages stored as well. (For the database, PhpWiki works with DBM, MySQL, PostgreSQL or text files.)

Every time a user hits the site, the page requested is pulled from the database and rendered on the fly. The user only really ever requests the file index.php, which then decides which other PHP files to include.

Links to pages in the Wiki are automatically linked: FindPage. This might be the single most compelling aspect of a Wiki, the ability to add pages simply by linking to them. The next most compelling thing is how easily external URLs link, like this:

  1. http://www.wcsb.org/
  2. ftp://ftp.redhat.com/
  3. news://news.mozilla.org/
  4. http://slashdot.org/
  5. http://theregister.co.uk/

Combined with one namespace and a simple markup, a Wiki exhibits many of the characteristics of WabiSabi.

PhpWiki is licensed under the GNU General Public license, which you should be able to see here: http://www.gnu.org/copyleft/gpl.txt.

Included from Help/Wikicreole

Phpwiki allows you to use the Wikicreole syntax to edit your wiki pages.

We have implemented most of Wikicreole 1.0 and Wikicreole 1.0 additions. What is implemented is described below.

Complete information about Wikicreole can be found at: http://www.wikicreole.org/

Cheat Sheet from Wikicreole web site

Text formatting

Bold

Bold text is made using two stars:

This sentence contains **words in bold**.

This sentence contains words in bold.

Italics

Italics text is made using two slashes:

This sentence contains //words in italics//.

This sentence contains words in italics.

Underline

Underline text is made using two underscores:

This sentence contains __underlined text__.

This sentence contains underlined text.

Monospace

Monospace text is made using two hashes:

This sentence contains ##monospace text##.

This sentence contains monospace text.

Superscript

Superscript text is made using two carets:

The XX^^th^^ century.

The XXth century.

Subscript

Subscript text is made using two commas:

Water is H,,2,,O.

Water is H2O.

Headers

Headers start on a new line with two or more equal signs (up to six) followed the header text.

Optional equal signs can be put at the end of the line (to be compatible with Mediawiki syntax). They are ignored.

The content of the headers is parsed, allowing for instance to use subscript and superscript text. (The header content parsing is optional in Wikicreole.)

~== First level of header (h2 in HTML) ==
~=== Second level of header (h3 in HTML) ===
~==== Third level of header (h4 in HTML)

Links

Simple link

This is a [[link]].

This is a link.

Link with alternate text

This is a [[link|link with alternate text]].

This is a link with alternate text.

External link (URL)

[[http://www.wikicreole.org]]

http://www.wikicreole.org

Raw external link (URL)

http://www.wikicreole.org

http://www.wikicreole.org

External link with alternate text

[[http://www.wikicreole.org|Visit the Wikicreole website]]

Visit the Wikicreole website

Paragraphs

Paragraphs are made of text separated by a blank line.

Line breaks

A line break is made with two backslashes.

This is the first line,\\and this is the second.

This is the first line,
and this is the second.

Lists

Unordered lists

* Item 1
* Item 2
** Item 2.1
** Item 2.2
* Item 3
  • Item 1
  • Item 2

    • Item 2.1
    • Item 2.2
  • Item 3

Ordered lists

# Item 1
# Item 2
## Item 2.1
## Item 2.2
# Item 3
  1. Item 1
  2. Item 2

    1. Item 2.1
    2. Item 2.2
  3. Item 3

Horizontal rule

A horizontal rule is made with four hyphens (or more)

----

Images

A inline image is created with curly brackets. An alternate text can be put after a pipe. If there is none, an empty alternate text will be created.

{{myimage.png}}
{{myimage.png|this is my image}}

Tables

All cells are separated by single pipes. Leading spaces are permitted before the first cell of a row and trailing spaces are permitted at the end of a line. The ending pipe is optional. You can embed links, bold, italics, line breaks, and nowiki in table cells. Equal sign directly following pipe defines a header. Headers can be arranged horizontally or vertically.

|=Heading Col 1 |=Heading Col 2         |
|Cell 1.1       |Two lines\\in Cell 1.2 |
|Cell 2.1       |Cell 2.2               |
Heading Col 1 Heading Col 2
Cell 1.1 Two lines
in Cell 1.2
Cell 2.1 Cell 2.2

Nowiki

Between three opening curly brackets and three closing curly brackets, no wiki markup is interpreted.

//This// does **not** get [[formatted]]
Some examples of markup are: {{{** <i>this</i> ** }}}

Some examples of markup are: ** <i>this</i> **

Escape character

The escape character is the tilde.

It escapes the character immediately following it.

It disables the automatic conversion of the URL immediately following it.

It disables camel case in the word following it.

~http://www.foo.com/

http://www.foo.com/

~CamelCaseLink

CamelCaseLink

Plugins

Plugins use double angle brackets.

<<CurrentTime format="date">>
2024-03-28

Included from Help/TextFormattingRules

Synopsis

Emphasis: // for italics, ** for bold, **//...//** for both, ## for fixed width.
Lists: * for bullet lists, # for numbered lists; use multiple * or # for nested lists.
Headings: "==", "===", "====", etc. make headings.
Preformatted text: Enclose text in {{{...}}} or <pre></pre>.
Indented text: Indent the paragraph with whitespaces.
References: use double square brackets for a [[page link]] or URL [[http://cool.wiki.int/]].
References: use pipe | to name the links: [[page link|some text]] or [[http://cool.wiki.int/|some text]].
Preventing linking: Prefix with "~": ~DoNotHyperlink.
Misc: "\\" makes a linebreak, "----" makes a horizontal rule.
Allowed HTML tags: b big i small tt em strong s strike abbr acronym cite code dfn kbd samp var sup sub
More: tables, images, table of contents, plugins

More explanations: Help:TextFormattingRules

Character Formatting

Emphasis

  • Use a double slash (//) for emphasis (usually italics)
  • Use a double asterisk (**) for strong emphasis (usually bold)
  • Mix them at will: bold italics
  • Emphasis can be used multiple times within a paragraph, but cannot cross paragraph boundaries:

// this

will not work//

Monospace

Monospace text is made using two hashes:

This sentence contains ##monospace text##.

This sentence contains monospace text.

Superscript

Superscript text is made using two carets:

The XX^^th^^ century.

The XXth century.

Subscript

Subscript text is made using two commas:

Water is H,,2,,O.

Water is H2O.

Fonts

There's no syntax for font tags.

Color Text

It is possible to write text in color.

%color=green% green text %% and back to normal

will give:
green text and back to normal

The easiest way to do it is to use the COLOR button in the Edit Toolbar. The text will be in green by default. You can then change the color.

Allowed colors are:

  • an HTML color number (# followed by 3 or 6 digits),
  • the following predefined color names:

aqua

beige

black

blue

brown

chocolate

cyan

fuchsia

gold

gray

green

ivory

indigo

lime

magenta

maroon

navy

olive

orange

pink

purple

red

salmon

silver

snow

teal

turquoise

violet

white

yellow

Note: you can put the headers in color, but only if you do not have a table of content. For now, the table of content is incompatible with color headers.

Escape Character

The tilde '~' is the Escape Character:

  • A single tilde '~' followed by nothing gets rendered as a single tilde. => ~
  • Two tilde '~~' get rendered as a single tilde. => ~
  • A single tilde before a link ('~http://foo.bar') prevents linking. => http://foo.bar
  • Two tildes before a link ('~~http://foo.bar') produce a tilde followed by the hyperlinked URL. => ~http://foo.bar
  • A tilde inside an URL gets removed, unless it's formatted inside square brackets.
  • Two tildes inside an URL (without brackets) become a single tilde. => http://foo.bar/~user or http://foo.bar/~user

Special Characters

All special non-whitespace HTML characters are displayed as-is. Exceptions below.

Paragraphs

  • Don't indent paragraphs
  • Words wrap and fill as needed
  • Use blank lines as separators
  • Four or more minus signs make a horizontal rule
  • "\\", "%%%" or "<br>" makes a linebreak (in headings and lists too)

Lists

Unordered lists

Recommended syntax (Wikicreole):

  • asterisk for first level
  • double asterisk for second level, etc.

Be sure to put a space after the asterisk.

You can also use indented asterisk for second level (indent at least two spaces).

Ordered lists

Recommended syntax (Wikicreole):

  • # for first level
  • double # for second level, etc.

Be sure to put a space after the hash sign.

You can also use indented # for second level (indent at least two spaces).

Definition lists

Term:
  definition

gives

Term
definition

Remark

Items may contain multiple paragraphs and other multi-lined content, just indent the items

Headings

Wikicreole syntax (recommended)

  • '==' at the start of a line makes a large heading (h2)
  • '===' at the start of a line makes a medium heading (h3)
  • '====' at the start of a line makes a small heading (h4)
  • '=====' at the start of a line makes a smaller heading (h5)
  • '======' at the start of a line makes a tiny heading (h6)

Classic Phpwiki syntax

  • '!!!' at the start of a line makes a large heading (h2)
  • '!!' at the start of a line makes a medium heading (h3)
  • '!' at the start of a line makes a small heading (h4)

Preformatted text

Place the preformatted text between three opening curly brackets and three closing curly brackets:

{{{
Preformatted text. ~WikiLinks do not work.
}}}

gives

Preformatted text. WikiLinks do not work.

If you want Wiki interaction, place preformatted lines inside <pre>:

<pre>
Preformatted text. WikiLinks still work.
</pre>

gives

Preformatted text. WikiLinks still work.

Indented Paragraphs

Two or more whitespaces signal indented text. Indents may be nested.

This is an indented block of text.

This block is even more indented.

E-mail style block-quoting is supported as well:

> This is block-quoted text.

renders as

This is block-quoted text.

References

  • Hyperlinks to other pages within the Wiki are made by placing the page name in double square brackets: this is a page link. Single brackets or WikiWords will also work.
  • Hyperlinks to external pages are done like this: http://www.wcsb.org/
  • You can name the links by providing the hyperlink or pagename, a pipe (|) and then the name: PhpWiki home page, the front page
  • You can suppress linking to URIs by preceding the word with a '~', e.g. NotLinkedAsWikiName, http://not.linked.to/
  • Also, the old way of linking URL's is still supported: precede URLs with "http:", "ftp:" or "mailto:" to create links automatically as in: http://c2.com/
  • URLs ending with .png, .gif, or .jpg are inlined if in square brackets, by themselves:
  • You can create footnotes by using [1], [2], [3], ... like this here #[|ftnt

_ref_1][1]. See footnote for counterpart. (If the [ is in the first column, it is a footnote definition rather than a footnote

reference [1].)

  • In-page hyperlinks are made by placing a named anchor and referring to the anchor in a hyperlink:

    • Named anchors:

      • #[[foo]]: An anchor around the text "foo" with id "foo".
      • #[[|foo]]: An empty anchor with id "foo".
      • #[[howdy|foo]]: An anchor around the text "howdy" with id "foo".
    • References to name anchors are made thusly:
      [[#hyperlinks]], [[OtherPage#foo]], [[OtherPage#foo|named]].
  • Semantic links are named links like: is_a::WikiPage and attributes like size:-4000.
  • A pagelink within square brackets starting with ":" is not backlinked.

Images

An inline image is created with curly brackets. An alternate text can be put after a pipe. If there is none, an empty alternate text will be created.

{{myimage.png}}
{{myimage.png|this is the alt text for my image}}
[[some link|{{myimage.png}}]] - if you click on the image, will goto "some link"
[[some link|{{myimage.png|alt text}}]] - same with alternative
[[http://example.com/|{{myimage.png}}]] - same as above: picture links to url
[[http://example.com/|{{myimage.png|alt text}}]] - same with alternative

Tables

Wikicreole tables

All cells are separated by single pipes. Leading spaces are permitted before the first cell of a row and trailing spaces are permitted at the end of a line. The ending pipe is optional.

You can embed links, bold, italics, line breaks, and nowiki in table cells.

Equal sign directly following pipe defines a header. Headers can be arranged horizontally or vertically.

|=Heading Col 1 |=Heading Col 2         |
|Cell 1.1       |Two lines\\in Cell 1.2 |
|Cell 2.1       |Cell 2.2               |

will give:

Heading Col 1 Heading Col 2
Cell 1.1 Two lines
in Cell 1.2
Cell 2.1 Cell 2.2

Mediawiki tables

See Help:MediawikiTablePlugin.

Definition list style tables

Definition list style tables are written just like definition lists, except that you replace the trailing colon on the term with a "pipe" (|).

Term 1 |
   Definition 1 begins here.
   Term 1.1 |
      Definition 1.1
   Term 1.2 |
      Definition 1.2
   This is part of definition 1.
Term 2 |
   Here's definition 2.

will give:

Term 1

Definition 1 begins here.

Term 1.1 Definition 1.1
Term 1.2 Definition 1.2

This is part of definition 1.

Term 2 Here's definition 2.

Old-style tables

See: Help:OldStyleTablePlugin

HTML Mark-Up Language

  • Some in-line markup is allowed through the use of HTML tags: b, big, i, small, tt, em, strong, abbr, acronym, cite, code, dfn, kbd, samp, var, sup and sub
  • < and > are themselves
  • The & characters will not work

Creating various kinds of special links

See Help:MagicPhpWikiURLs for gory details on how to write various kind of wiki maintenance and other special links.

Inserting plugins

Several plugins permit embedding additional functionality to Wiki pages. For example,

<<BackLinks page=HomePage info=hits>>

gives

9 pages link to HomePage:
Page Name. Hits.
Help/EditMetaDataPlugin 28
Help/PopUpPlugin 35
Help/RandomPagePlugin 33
Help/RedirectToPlugin 32
Help/RichTablePlugin 35
Help/TextFormattingRules 289
Help/UserRatingsPlugin 35
PhpWikiManual 246806

For more information on plugins see Help:WikiPlugin, and PluginManager for a list of all plugins.

Included from Help/PagePermissions

Full recursive ACL page permissions support (Solaris / Windows style)

Boolean permissions per page and action (granted or denied) based on the current users group membership is implemented with ACL's (Access Control Lists). Opposed to the simplier unix like ugo:rwx system.
The previous system was only based on action and current user, independent of pages.

A individual page permission may be inherited from its parent pages, and from an optional master page ("." or _dotpage').
Use predefined default permissions, if a "." page does not exist.
Pagenames starting with "." have tighter default permissions. (edit, change, list disallowed)

Order of Evaluation (denial overrides granted, or vice versa?)

The array of permissions is evaluated from top to bottom.
Access is granted if the next matching group membership returns true, denied if false.
If the group membership is false, the next group is tried.
If no group membership matches the upper permissions are tried recursively:

current page => basepage => "." page => default perms.

If no group-perm pair grants access, access is denied.

Consider the following perm:

     'change' => array(ACL_ADMIN => false,
                       ACL_OWNER => true));

=> "Members of ADMIN may not change, the owner may change."


For Authentication see WikiUser.php, WikiGroup.php and main.php

I suspect ACL page permissions to degrade performance by 10%

Enable/Disable it in config/config.ini
ENABLE_PAGEPERM = true

The defined (and extendable) main.php actions map to simplier access types:

       browse => view
       edit   => edit
       create => edit or create
       remove => remove
       rename => change
       store prefs => change
       list in PageList => list

For simplicity we also map the ACL to the posix-style owner, group and world groups and read, write, execute perms, in cygwin fashion.

Groups - definition of group membership

See WikiGroup how to enable and where to store user-specific group membership. Group methods: database, file, ldap, wikipage, none

To do: explain better.

The following special groups are always predefined, even if no other group methods are provided:

  • _EVERY
  • _ANONYMOUS
  • _BOGOUSER
  • _HASHOMEPAGE
  • _SIGNED
  • _AUTHENTICATED
  • _ADMIN
  • _OWNER
  • _CREATOR

Those special groups are stored in a page acl as locale-independent string.

To do: See the available translations for these special groups.

Other group names are safed as defined by the group methods. (e.g. "Other Users")

Perms - mapping of actions to permissions

PhpWiki supports individual actions, the default is browse. To simplify ACL's these actions are mapped to some special permissions (vulgo 'perms').

We currently support the following permissions which can be stored in every page, for every group.

list List this page and all subpages (for PageList)
view View this page and all subpages
edit Edit this page and all subpages
create Create a new (sub)page
dump Download the page contents
change Change page attributes
remove Remove this page

There are no plans to support additional custom perms. The API can handle that, but there's no UI, and it would be only specific for certain plugins, which check permissions by their own.

Action <=> Perm mapping

Those perms are mapped to those actions. Action Pages (plugins) check their access restrictions by themselves.

list none, 'list' is checked for every pagename listed in PageList, to prevent from being listed in AllPages.
view browse, viewsource, diff, select, xmlrpc, search, pdf
dump zip, ziphtml, dumpserial, dumphtml
edit revert, edit
create edit or create, if the page doesn't exist yet
change upload, loadfile, remove, lock, unlock, upgrade, chown, setacl, setaclsimple, rename.
All other actionpages which are not wikiwords.

Default Permissions

        $perm = array('view'   => array(ACL_EVERY => true),
                      'edit'   => array(ACL_EVERY => true),
                      'create' => array(ACL_EVERY => true),
                      'list'   => array(ACL_EVERY => true),
                      'remove' => array(ACL_ADMIN => true,
                                        ACL_OWNER => true),
                      'change' => array(ACL_ADMIN => true,
                                        ACL_OWNER => true));
        if (ZIPDUMP_AUTH)
            $perm['dump'] = array(ACL_ADMIN => true,
                                  ACL_OWNER => true);
        else
            $perm['dump'] = array(ACL_EVERY => true);
        // view:
        if (!ALLOW_ANON_USER) {
            if (!ALLOW_USER_PASSWORDS)
                $perm['view'] = array(ACL_SIGNED => true);
            else
                $perm['view'] = array(ACL_AUTHENTICATED => true);
            $perm['view'][ACL_BOGOUSER] = ALLOW_BOGO_LOGIN ? true : false;
        }
        // edit:
        if (!ALLOW_ANON_EDIT) {
            if (!ALLOW_USER_PASSWORDS)
                $perm['edit'] = array(ACL_SIGNED => true);
            else
                $perm['edit'] = array(ACL_AUTHENTICATED => true);
            $perm['edit'][ACL_BOGOUSER] = ALLOW_BOGO_LOGIN ? true : false;
            $perm['create'] = $perm['edit'];
        }
        return $perm;

Included from Help/SemanticRelations

The PhpWiki SemanticWeb implementation follows closely the implementation of the semantic Mediawiki extension. It features:

  • Annotation of article-article-links by means of configurable relations (link-types).
  • Annotation of articles with simple data-values that are assigned to numeric attributes.
  • Support for using physical units of measurement in all numerical attributes, without need for prior configuration.

Relations can be searched for with regular expressions, attributes can be searched for with full mathematical expressions.

The annotation data will be combined with annotations from the current category system to generate standard-compliant OWL/RDF output, which can be fully processed with tools that support OWL DL or OWL Lite, but which can also be treated in a meaningful way by software that supports RDF, RDFS or XML.

Relations

Relations (link-types) are defined as link with the following syntax:

  relation::pagename

Attributes

Attributes are defined as link to numbers (understandable by GNU Units) with the following markup syntax:

  attribute:=value

Attributes and relations refer only to the current page - the current page is the subject, the relation the predicate, the linked page the object in a RDF triple. Relations always refer to another page, attributes not.

Example

Sample taken from http://wiki.ontoworld.org/index.php/San_Diego

San Diego [[is_a::city]] located in the southwestern corner of
[[located_in::California|California]], the extreme southwestern corner
of the [[country::United States|United States]]. It is the county seat
of San Diego County. As of the 2000 census, the city had a total population of
[[population:=1,223,400|1,223,400]]; as of 2005, the California Department
of Finance estimated the city to have 1,305,736 residents. The city
is the second-largest in California and the seventh-largest in the
United States and is noted for its temperate climate and many beaches.

According to the United States Census Bureau, the city has a total
area of [[area:=963.6 km^2|963.6 km²]] (372.0 mi²). 840.0 km²
(324.3 mi²) of it is land and 123.5 km² (47.7 mi²) of it is water.
The total area is 12.82% water.

Most notably, San Diego is the location of the 2005 International
Symposium on Wikis 2005, and the San Diego Zoo, and the San Diego
Chargers.

<<SemanticRelations>>

See Also

Included from Help/Spreadsheet

Phpwiki has extended the Wikicreole syntax of tables so that some simple spreadsheet-like calculations can be performed in tables.

Syntax

Five functions are available: SUM, AVERAGE, MAX, MIN and COUNT.

They operate on the current row (R) or column (C).

The function is placed in the cell surrounded by @@. Other wiki text can be placed in the cell, but there can be only one formula per cell.

Formula

Meaning

@@=SUM(R)@@

Sum of cells in current row

@@=SUM(C)@@

Sum of cells in current column

@@=AVERAGE(R)@@

Average of cells in current row

@@=AVERAGE(C)@@

Average of cells in current column

@@=MAX(R)@@

Maximum value of cells in current row

@@=MAX(C)@@

Maximum value of cells in current column

@@=MIN(R)@@

Minimum value of cells in current row

@@=MIN(C)@@

Minimum value of cells in current column

@@=COUNT(R)@@

Number of cells in current row (numeric or not, excluding headers and current cell)

@@=COUNT(C)@@

Number of cells in current column (numeric or not, excluding headers and current cell)

Examples

Sum

|=Region          |=Telecom Sales  |=Power Sales |=Other       |=TOTAL      |
|=Europe          |            320 |          80 |         120 |@@=SUM(R)@@ |
|=Asia            |            580 |         723 |         564 |@@=SUM(R)@@ |
|=North America   |            235 |          60 |         109 |@@=SUM(R)@@ |
|=South America   |            120 |          35 |          82 |@@=SUM(R)@@ |
|=Antarctica      |              0 |           0 |          12 |@@=SUM(R)@@ |
|=TOTAL           |    @@=SUM(C)@@ | @@=SUM(C)@@ | @@=SUM(C)@@ |Grand total: @@=SUM(R)@@ |
Region Telecom Sales Power Sales Other TOTAL
Europe 320 80 120 520
Asia 580 723 564 1867
North America 235 60 109 404
South America 120 35 82 237
Antarctica 0 0 12 12
TOTAL 1255 898 887 Grand total: 3040

Total of both colums and rows is calculated automatically by wiki.

Count and Sum

|=Bug                |=Priority   |=Subject             |=Status     |=Days to fix
| 1231               | Low        | File Open ...       | Open       | 3
| 1232               | High       | Memory Window ...   | Fixed      | 2
| 1233               | Medium     | Usability issue ... | Assigned   | 5
| 1234               | High       | No arrange ...      | Fixed      | 1
| Number of bugs: @@=COUNT(C)@@ | |                     |            | Total: @@=SUM(C)@@ days
Bug Priority Subject Status Days to fix
1231 Low File Open ... Open 3
1232 High Memory Window ... Fixed 2
1233 Medium Usability issue ... Assigned 5
1234 High No arrange ... Fixed 1
Number of bugs: 4 Total: 11 days

Min, Max and Average

|=Location            |=Morning     |=Noon        |=Evening     |=Average temperature |
| Paris               | 7           | 13          | 10          | @@=AVERAGE(R)@@     |
| London              | 3           | 10          | 8           | @@=AVERAGE(R)@@     |
| Berlin              | 9           | 15          | 12          | @@=AVERAGE(R)@@     |
| Tokyo               | 12          | 20          | 16          | @@=AVERAGE(R)@@     |
| Maximum temperature | @@=MAX(C)@@ | @@=MAX(C)@@ | @@=MAX(C)@@ |                     |
| Minimum temperature | @@=MIN(C)@@ | @@=MIN(C)@@ | @@=MIN(C)@@ |                     |
Location Morning Noon Evening Average temperature
Paris 7 13 10 10
London 3 10 8 7
Berlin 9 15 12 12
Tokyo 12 20 16 16
Maximum temperature 12 20 16
Minimum temperature 3 10 8

Limitations

The formulas are evaluated line per line, from left to right.

So this will work:

|          10 |         -13 | @@=SUM(R)@@ |
|          15 |          17 | @@=SUM(R)@@ |
| @@=SUM(C)@@ | @@=SUM(C)@@ | @@=SUM(R)@@ |
10 -13 -3
15 17 32
25 4 29

And this will not:

| @@=SUM(R)@@ |          10 |         -13 |
| @@=SUM(R)@@ |          15 |          17 |
| @@=SUM(R)@@ | @@=SUM(C)@@ | @@=SUM(C)@@ |
-3 10 -13
32 15 17
0 25 4

Author

  • Marc-Etienne Vargenau, Alcatel-Lucent

Included from Help/PageList

The PageList library allows to list a number of pagenames, optionally as table with various columns.

This library relieves some work for these plugins:

It also allows dynamic expansion of those plugins to include more columns in their output.

Arguments

Argument

Description

Default value

info

Which columns to display

pagename

exclude

Which pages to exclude. Wildcards, comma-separated lists and <!plugin-list !> arrays allowed.

none

author

Select pages by author; current user by []

false

owner

Select pages by owner; current user by []

false

creator

Select pages by creator; current user by []

false

sortby

Select column to sort

none

limit

Number of rows, or start index and number of rows (see below)

50

paging

auto (top + bottom rows if applicable)
top (top only if applicable)
bottom (bottom only if applicable)
none (don't page at all)

auto

cols

side-by-side display of list (1-3)

1

azhead

1: group by initials
2: provide shortcut links to initials also

0

comma

Condensed comma-separated list, 1 if without links, 2 if with

0

commasep

Comma separator

', '

listtype

ul, ol, dl, comma

ul

ordered

OL or just UL lists (ignored for comma)

false

linkmore

If count > 0 and limit > 0, display a link with the number of all results, linked to the given pagename.

none

nopage

for info=col omit the pagename column

false

Note for limit

limit can be:

  • a single integer, in that case it is the number of rows;
  • or two integers separated by a comma, in that case it is the start index (starting at 0) and the number of rows.

Info arguments

Column 'info=' arguments:

pagename Page Name (string regex)
mtime Last Modified
hits Hits
summary Last Summary
version Version
author Last Author
locked Locked
external External
minor Minor Edit
size Size
creator Creator
owner Owner
checkbox Selectable checkbox at the left
content Page content
perm Permission Mask
acl ACL

Special, custom columns, either theme or plugin (WikiAdmin*) specific:

remove Remove
renamed_pagename Rename to
ratingwidget wikilens theme specific.
custom See plugin WikiTranslation

Symbolic 'info=' arguments:

all All columns except the special columns
most pagename, mtime, author, hits
some pagename, mtime, author

Included from Help/Advice for Mediawiki users

If you contribute to Wikipedia or to other wikis that use the Mediawiki software, you will notice some differences in the wiki syntax of Mediawiki and the wiki syntax of Phpwiki.

Syntax differences

Here are some differences between Mediawiki and Phpwiki:

  • Italics are // (but you can also use '' like in Wikipedia)
  • Bold is ** (you cannot use ''' like in Wikipedia)
  • Line break is \\ in Wikicreole, <br /> in Mediawiki
  • There is no automatic capitalisation of first character of page name. Pages [[foo]] and [[Foo]] are different.
  • A space in a page name in not equivalent to an underscore. Pages [[foo bar]] and [[foo_bar]] are different. We recommend to use a space in the page names.
  • Many things that are built-in in Mediawiki use plugins in Phpwiki (table of contents, redirections, back links, etc.).
  • Redirections are less sophisticated in Phpwiki (e.g. backlinks do not show redirected pages)

Tables

You can use the Mediawiki table syntax.

Included from Help/AddCommentPlugin

The AddComment plugin lets users attach comments to the end of a page. Change the layout via the templates comment.tmpl and addcomment.tmpl, and the CSS classes wikicomment, wikicomment-header, wikicomment-body, wikicomment-footer.

Usage

<<AddComment order||=normal jshide||=0 mode||=show,add noheader||=0>>

Arguments

Argument

Description

Default value

jshide

Boolean. If true, the comments and/or textbox should be initially hidden and on click expanded.

false

order

List comments in chronological (order=normal) or reverse order (order=reverse).

normal

mode

List of “add” and/or “show”.

add,show

noheader

Boolean. If true, the “Comments” header should be omitted.

false

pagename

Attach to which page?

current pagename

Known Problems

  • jshide does not work yet. Not very well tested.

Examples

Comments

Included from Help/AllPagesPlugin

The AllPages plugin lists all pages in this wiki.

Usage

<<AllPages arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

include_empty

Boolean. If true, pages that are referenced but not yet created are included in the list.

false

info

Allows multiple columns: info=mtime,hits,summary,version,author,locked,minor or all

empty

userpages

Boolean. If true, display only pages created by users (not the ones created at initialisation of the wiki).

false

Example

<<AllPages limit=20 cols=3>>

All pages in this wiki (280 total):

|<<   << - 1 / 14 - Next >>   >>|

Author

See Also

Included from Help/AllUsersPlugin

The AllUsers plugin lists all once authenticated users.

Usage

<<AllUsers arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

include_empty

Boolean. If true, shows also users which stored their preferences, but never saved their homepage.

true

Example

<<AllUsers limit=10>>

Authenticated users on this wiki (0 total):

No matches

Author

See Also

Included from Help/AnalyseAccessLogSqlPlugin

The AnalyseAccessLogSql plugin provides a framework to analyse the SQL access log and display the results. This information may be sensitive and therefore this plugin is limited to administrator access only.

A small number of queries that may (or might not) use the MySQL specific dialect of SQL are provided in lib/plugin/AnalyseAccessLogSql.php. For more information, please see the section Adding new queries below.

Usage

Experimental! Will change a lot.

<<AnalyseAccessLogSql mode=<QUERY NAME> >>

Parameters

Argument

Description

Default value

mode

The name of the query to execute. See Adding new queries below. Required parameter.

referring_domains

period

Use in combination with the count parameter. The type of history period to retrieve from the SQL access log. Blank (the default) for all history, or one of “weeks”, “days”, “hours”, or “minutes”.

blank

count

Use in combination with the period parameter. Must be a number. The number of periods to retrieve from the access log.

0

caption

The value of this parameter is used as the caption for the output. If not set, the caption on the table defaults to the mode.

blank

center

If set, the table is centered on the page, otherwise left justified.

debugShowQuery

If set, the SQL will be displayed in the table footer. Useful while debugging new queries or just for interest.

user

Blank (the default) to retrieve all users, or a specific user, or “<NONE>” for SQL access log entries with no user.

host

Blank (the default) to retrieve all remote_hosts, or a specific host.

referrer

Blank (the default) to retrieve all referrers, “<NONE>” to retrieve entries with no referrer, otherwise any referrer that matches this parameter, truncating longer referrers before matching. So a parameter of referrer='http:localhost' will match 'http:localhost/wiki/index.php', 'http://localhost/wiki/index.php/HomePage' etc.

local_referrers

If set (the default), return all referrers. If not set, return only external referring sites, excluding references from within the wiki.

true

Adding new queries

The file lib/plugin/AnalyseAccessLogSql.php contains a default set of queries against the SQL access log. Feel free to change this file to suit your own needs, but please note that this requires filesystem access to the web server where PhpWiki is running. In particular, this file may need to be modified to correctly query databases other than MySQL. The queries supplied by default are: “Referring URLs”, “Referring Domains”, “Remote Hosts”, “Users” and “Host Users”.

To add a new query, add a new section towards the end of the file, using one of the existing queries as a template. An example of an existing query is:

} elseif ($mode=="Users") {
    $query = "SELECT "
        ."remote_user AS User, "
        ."count(*) AS 'Access Count' "
        ."FROM $accesslog "
        .($whereConditions ? 'WHERE '.$whereConditions : '')
        ."GROUP BY User";

If you do add a query, please consider contributing it back to the PhpWiki project at http://sourceforge.net/projects/phpwiki

API for AnalyseAccessLogSql

  • input arguments:

    • $mode contains the name of the query requested in the plugin parameters.
    • $accesslog contains the qualified name of the accesslog table, which may or may not be equal to “accesslog”.
    • $whereConditions contains the conditions (specific user, etc.) requested in the plugin parameters.
  • output:

    • $query must contain the final SQL query to be executed.
  • conventions:

    • While constructing the query string,

      • each clause is on a separate line and
      • each clause contains the required trailing punctuation or space.
    • The mode parameter is, by default, displayed as the caption in the final output, so please choose a user friendly name.
    • The column names displayed on the wiki page are generated from the SQL column names defined in the queries, so please choose user friendly names. MySQL allows column names to include spaces. If spaces are not allowed, then “_” is probably the next best choice.
  • language hints for PHP newbies - please remember:

    • terminate statements with “;”,
    • assignment uses “=” and comparison uses “==”,
    • concatenate strings using the “.” operator,
    • the parentheses around the expression “($whereConditions ? 'WHERE '.$whereConditions : )=” are essential,
    • strings enclosed in single quotes may not contain substrings enclosed in single quotes (actually the truth is more complex but let's leave it like that here), and
    • strings enclosed in double quotes will evaluate and replace variable names so that, for example, "FROM $accesslog" might be evaluated to "FROM phpwiki_accesslog".

Authors

Included from Help/AppendTextPlugin

AppendText is a plugin to automatically add text to a page. For general usage better use the AddComment plugin.

<<AppendText arguments>>

Arguments

Argument

Description

Default value

page

Append to which page

Current page.

pages

Append to multiple pages

none

s

What text to add. Note: A \n is always prepended.

before

(Optional) Add before the matching line beginning with before.

after

(Optional) Add after the matching line beginning with after.

redirect

Boolean. If true, redirect to modified page.

false

Examples

Add from a list of all available plugins one to the current page

<<WikiFormRich action=AppendText buttontext="AddPlugin"
               pulldown[] name=s text="Plugins: " value=<!plugin-list BackLinks page=CategoryWikiPlugin !>
>>
Plugins:  

Add from a list of all available Categories to the current page

<<WikiFormRich action=AppendText buttontext="AddCategory"
               pulldown[] name=s text="Categories: " value=<!plugin-list TitleSearch s=Category !>
>>
Categories:  

Included from Help/AsciiMathPlugin

Usage

<<AsciiMath formula >>

Arguments

All arguments are passed to the ASCII Math PHP library and rendered as Math ML.

Example

<<AsciiMath sum_(i=1)^n i = (n(n+1))/2 >>
i = 1 n i = n ( n +1 ) 2

Author

See Also

Included from Help/AsciiSVGPlugin

The AsciiSVGPlugin plugin is an interface to http://www1.chapman.edu/~jipsen/svg/asciisvg.html

Syntax: http://www1.chapman.edu/~jipsen/svg/asciisvgcommands.html

The browser must support SVG in order graphs to be displayed. If you are using a recent browser (Firefox, Opera, Chrome, Safari) then you should see the examples.

Usage

<<AsciiSVG width= height= onmousemove="" script=""
         code...
>>

Arguments

Argument

Description

Default value

height

graph width

200

height

graph height

200

script

One line script.

false

onmousemove

false

All other arguments are passed to the ASCIISvg javascript library and rendered as SVG.

See http://www1.chapman.edu/~jipsen/svg/asciisvg.html

Example

<<AsciiSVG width="117" height="117"
  initPicture(-10,10)
  axes()
  stroke = "red"
  p = []
  with (Math)
    for (t = 0; t < 10.01; t += 0.05)
      p[p.length] = [t*cos(PI*t), t*sin(PI*t)]
  path(p)
>>

Known Problems

With multiple AsciiSVG plugins on the same page the second and subsequent ones will have the same width and height.

Author

See Also

Included from Help/AtomFeedPlugin

The AtomFeed plugin displays an external Atom feed.

Usage

<<AtomFeed url=http://example.com/feed.atom>>

Arguments

Argument

Description

Default value

url

Atom feed URL

empty

feed

Name of the Atom feed

empty

description

Description of the feed.

empty

maxitem

Max. number of entries (0 = unlimited)

0

titleonly

Boolean. If true, only displays the title of the entry.

false

Example

Atom feed for PHP News

<<AtomFeed feed=PHPNews description="PHP News"
           url=https://www.php.net/feed.atom titleonly=true maxitem=5>>

Author

  • Sébastien Le Callonnec

Included from Help/AuthorHistoryPlugin

The AuthorHistory plugin allows you to list the history of edits by a particular author; you can specify the page name as well (default is the current page).

Usage

<<AuthorHistory arguments>>

Arguments

Argument

Description

Default value

exclude

Comma-separated list of pages to exclude

empty

noheader

Boolean. If true, page header should be omitted.

false

includeminor

Boolean. If true, include minor modifications.

false

includedeleted

Boolean. If true, include deleted pages.

false

author

Display modification by this author

Current user

page

Give a page name or "all" (list all pages with edits by this user)

Current page

info

Info to display in the table

version, minor, author, summary, mtime

Examples

<<AuthorHistory page=HomePage includeminor=1>>
<<AuthorHistory page=all>>

Included from Help/BackLinksPlugin

The BackLinks plugin lists all pages which link to a given page.

The contents of all pages are searched to find links to the current page. The BackLinks function also answers the question: “Which pages contain the title of this page?”.

To display the list of pages which all contain multiple links use a pagelist as page argument. For example <<BackLinks page=Milk,Honey>> would display all pages which contain links to Milk AND Honey.

Usage

<<BackLinks arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

page

Page from which the back links are calculated.

Current page

include_self

Boolean. If true, include yourself in the results.

false

noheader

Boolean. If true, header should be omitted.

false

linkmore

If count > 0 and limit > 0 display a link with the number of all results, linked to the given pagename.

Example

<<BackLinks page=HomePage>>

9 pages link to HomePage:

Known Problems

Back links might not work if the link is in text generated by a plugin. Prior to PhpWiki 1.6.2, back links did not work if the link was inside a table, or in an included template,

Author

See Also

Included from Help/BlogArchivesPlugin

The BlogArchives plugin lists monthly links for the current users blog if signed, or the ADMIN_USER's blog if not.

Usage

<<BlogArchives arguments>>

Arguments

Argument

Description

Default value

user

Blog of given user

empty

month

List the blog titles per month

empty

Example

<<BlogArchives user="John Smith">>

Author

See Also

Included from Help/BlogJournalPlugin

The BlogJournal plugin includes the latest blog entries for the current users blog if signed, or the ADMIN_USER's blog if not.

Usage

<<BlogJournal arguments>>

Arguments

Argument

Description

Default value

count

Number of entries

empty

user

Blog of given user

empty

month

List the blog titles per month

empty

Example

<<BlogJournal>>

No Blog Entries

New entry

Author

See Also

Included from Help/BoxRightPlugin

The BoxRight plugin displays its content as a wiki-formatted right-floating div box with border.

Example

<<BoxRight
**This Wiki** ([[Help:WikiWikiWeb|What is a Wiki?]]) is a place where problems and
solutions are being documented.

See [[Help/HowToUseWiki|How to use this Wiki]] for instructions.

//Don't be afraid - it's easy and you can't break anything!//

This Wiki (What is a Wiki?) is a place where problems and solutions are being documented.

See How to use this Wiki for instructions.

Don't be afraid - it's easy and you can't break anything!

Remark

If ENABLE_MARKUP_DIVSPAN is enabled then you can produce the same result with a simple <div>:

<div class=boxright>
**This Wiki** ([[Help:WikiWikiWeb|What is a Wiki?]]) is a place where problems and
solutions are being documented.

See [[Help/HowToUseWiki|How to use this Wiki]] for instructions.

//Don't be afraid - it's easy and you can't break anything!//
</div>

Included from Help/CacheTestPlugin

The CacheTest plugin allows to test image caching.

Usage

<<CacheTest arguments>>

Arguments

Argument

Description

Default value

text

Text in image

This is a simple example using WikiPluginCached.

font

3

type

png

Example

<<CacheTest>>
This is a simple example using WikiPluginCached.

Author

  • Johannes Große

Included from Help/CalendarListPlugin

The CalendarList plugin is used in conjunction with the Calendar plugin. It was written for those who use a wiki as a personal information manager.

Just click any date in the calendar, edit the for that date, then come back to this page. The event should be listed below the calendar.

Usage

<<Calendar>>
<<CalendarList>>

Example

Click any date and edit it, then return to this page:

< March 2022 >
Mon Tue Wed Thu Fri Sat Sun
 1   2   3   4   5   6 
 7   8   9   10   11   12   13 
 14   15   16   17   18   19   20 
 21   22   23   24   25   26   27 
 28   29   30   31 

Arguments

Argument

Description

Default value

year

Specify the year for the calendar.

Current year

month

Specify the month for the calendar.

Current month

prefix

Prefix

Current page

date_format

Date format

%Y-%m-%d

order

Report sequence: “normal” or “reverse”. “reverse” displays newest dates first.

PLUGIN_CALENDARLIST_ORDER

month_offset

Month offset

0

Support ranges: next or last N days/events

Argument

Description

Default value

next_n_days

next_n_days=60: Display entries for the next 60 days / 2 months.

PLUGIN_CALENDARLIST_NEXT_N_DAYS (empty)

next_n

next_n=20: Display only the next 20 entries. Ignored if next_n_days is defined.

PLUGIN_CALENDARLIST_NEXT_N (empty)

last_n_days

last_n_days=60: Display entries for the last 60 days / 2 months.

PLUGIN_CALENDARLIST_LAST_N_DAYS (empty)

last_n

last_n=20: Display only the last 20 entries. Ignored if last_n_days is defined.

PLUGIN_CALENDARLIST_LAST_N (empty)

month_format

How to display the Month.

%B %Y

wday_format

How to display the weekday, if supported by your strftime() function.

%a

start_wday

Start the week at Sunday or Monday

1 for Monday

Config Options

  • PLUGIN_CALENDARLIST_ORDER = normal
  • PLUGIN_CALENDARLIST_NEXT_N_DAYS = ''
  • PLUGIN_CALENDARLIST_NEXT_N = ''
  • PLUGIN_CALENDARLIST_LAST_N_DAYS = ''
  • PLUGIN_CALENDARLIST_LAST_N = ''

Author

Derived from Calendar plugin by Martin Norbäck.

Included from Help/CalendarPlugin

The Calendar plugin can be used to generate a monthly calendar in a wiki page. It's handy for personal wikis.

Individual dates in the calendar link to specially named wiki pages. The names for the “day pages” are by default formed by appending the date to the pagename on which the calendar appears.

Usage

<<Calendar>>

will get you:

< March 2022 >
Mon Tue Wed Thu Fri Sat Sun
 1   2   3   4   5   6 
 7   8   9   10   11   12   13 
 14   15   16   17   18   19   20 
 21   22   23   24   25   26   27 
 28   29   30   31 

Arguments

Argument

Description

Default value

Selection of Month

year

Specify the year for the calendar.

Current year

month

Specify the month for the calendar.

Current month

month_offset

Added to month. Can be used to include several months worth of calendars on a single wiki page.

0

“Day Page” Names

date_format

strftime style format string used to generate page names for the “day pages.”

The default value is %Y-%m-%d.

prefix

Prepended to the date (formatted per date_format) to generate the “day page” names.

The default value is [pagename]/.

Appearance

month_format

strftime style format string used to generate the title of the calendar.

(Default: %B %Y.)

wday_format

strftime style format string used to generate the day-of-week names at the top of the calendar.

start_wday

What day of the week does the calendar start on. This should be specified as an integer in the range zero (Sunday) through six (Saturday), inclusive.

Examples

<<Calendar month_offset=+1>>

will get you:

< April 2022 >
Mon Tue Wed Thu Fri Sat Sun
 1   2   3 
 4   5   6   7   8   9   10 
 11   12   13   14   15   16   17 
 18   19   20   21   22   23   24 
 25   26   27   28   29   30 
<<Calendar start_wday=0>>

will get you:

< March 2022 >
Sun Mon Tue Wed Thu Fri Sat
 1   2   3   4   5 
 6   7   8   9   10   11   12 
 13   14   15   16   17   18   19 
 20   21   22   23   24   25   26 
 27   28   29   30   31 

See Also

Often used together like this:

<<Calendar>>
<<CalendarList>>

Authors

This feature was inspired by Calendar, and first implemented by Gary Benson. It was later implemented as a plugin by Jeff Dairiki.

Included from Help/ChartPlugin

The Chart plugin allows to easily draw simple graphs on a wiki page.

Three graph formats are possible: line, bar and pie. In pie mode, negative values are ignored.

The browser must support SVG in order graphs to be displayed. If you are using a recent browser (Firefox, Opera, Chrome, Safari) then you should see the examples.

Usage

<<Chart width=200 height=200 legend="My legend" type=line color=green data="5, 7, 11, 3, 15" >>

Arguments

Argument

Description

Default value

width

Graph width in pixels

200

height

Graph height in pixels

200

legend

Legend of the chart

none

type

line, bar or pie

line

data

Graph data: a list of numbers separated by comma

none (required argument)

Examples

Line chart

<<Chart type=line
        data="5, 7, 11, 3, 15"
        legend="Price evolution"
>>
Price evolution

Bar chart

<<Chart type=bar
        color=red
        data="5, 7, 11, 3, 15"
        legend="Number of users"
>>
Number of users

Pie chart

<<Chart type=pie
        color=blue
        data="5, 7, 11, 3, 15"
        legend="Use per country"
>>
Use per country

Known Problems

With multiple Chart plugins on the same page the 2nd and subsequent ones will have the same width and height.

Author

  • Marc-Etienne Vargenau

See Also

Included from Help/CommentPlugin

The Comment plugin lets you hide parts of a Wiki page without actually deleting the text. Comments will only be visible in the Wiki markup when editing or viewing the source.

Usage

Simply place the text to be commented out between <<Comment and >>:

<<Comment

== A Hidden Section ==

This text will not show up in the generated HTML page, but it is still
visible when editing the WikiMarkup.

>>

Author

Included from Help/CreateBibPlugin

The CreateBib plugin creates a BibTex file from linked pages.

The page used in argument should contain a list of links to pages containing references in BibTex format.

Usage

<<CreateBib arguments>>

Arguments

Argument

Description

Default value

pagename

The page from which the BibTex file is generated

none (required argument)

Example

<<CreateBib pagename="MyBib">>

Author

  • Lea Viljanen

See Also

Included from Help/CreatePagePlugin

The CreatePage plugin allows to easily create new pages, optionally with default content.

This allows you to create a page getting the new pagename from a forms-based interface, and optionally with the initial content from some template.

Put a <?plugin-form CreatePage ?> at some page, browse this page, enter the name of the page to create, then click the button.

Usage

<?plugin-form CreatePage ?>
<?plugin-form CreatePage template=CategoryHomePages ?>
<?plugin-form CreatePage template=SomeTemplatePage vars="year=2004&name=None" ?>

Arguments

Argument

Description

Default value

s

The pagename, which will passed to the plugin.

empty

initial_content

The new page will be pre-filled with this content.

empty

template

The new page will be pre-filled with the content of this page.

empty

vars

Variables to be expanded.

overwrite

Boolean. If true, overwrite an existing page.

false

Variable Expansion

The content (either initial_content or template) might hold some variables, which will be expanded on creation. Unassigned variables will stay as %%<var>%%, assigned variables without matching %%<var>%% placeholder will be ignored, without any warning.

A variable in a template is denoted as %%var%%, which will be expanded by the value of var given to the vars argument (in urlencoded php notation).

Some special variables are automatically assigned:

%%ctime%%

$WikiTheme->formatDateTime(time())

%%author%%

$user->getId()

This forms together with page templates and the Help:WikiFormRichPlugin and optionally the Help:SqlResultPlugin a framework to create templated pages.

Authors

Examples

<?plugin-form CreatePage s=MyHomePage ?>

See Also

Included from Help/CreateTocPlugin

The CreateToc plugin allows to create a dynamical Table of Contents of all headers. It also allows to number the headers in the page.

The headers might be in classic Phpwiki syntax or in Wikicreole/Mediawiki syntax (see below).

The Table of Contents can easily be inserted by clicking on the TOC button in the Edit toolbar.

Usage

<<CreateToc arguments>>

Arguments

Argument

Description

Default value

extracollapse

Boolean. If true, provide a button to hide/display the Table of Contents.

true

firstlevelstyle

Style of first level numbering: number, letter or roman.

number

headers

Which headers to include. See below.

1,2,3,4,5

indentstr

Indent string.

&nbsp;&nbsp;

jshide

Boolean. If true, the Table of Contents should be initially hidden and on click expanded.

false

liststyle

List style: dl or ol or ul. Using ol is equivalent to with_counter=1.

dl

noheader

Boolean. If true, the Table of Contents header should be omitted.

false

notoc

Boolean. If true, the Table of Contents should no be displayed (headers are numbered).

false

pagename

Table of Contents of which page?

current pagename

position

Where to display the Table of Contents: full, left or right.

full

version

Page version

Most recent version

width

Width of Table of Contents (if position is left or right)

200px

with_counter

Boolean. If true, hierarchical prefixes should be added.

false

with_toclink

Boolean. If true, headers should link back to the Table of Contents.

false

Headers

Syntax: a comma-separated list of levels. !!!,!!,! also allowed

Level

Phpwiki syntax

Wikicreole/Mediawiki syntax

HTML rendering

1

!!!

==

h2

2

!!

===

h3

3

!

====

h4

4

none

=====

h5

5

none

======

h6

Examples

Default values

<<CreateToc>>

Only two levels of headers

<<CreateToc headers=1,2>>

Table of Contents with hierarchical numbering

<<CreateToc with_counter=1>>

No Table of Contents, but headers are numbered

<<CreateToc notoc=1>>

Table of Contents with hierarchical numbering, first level in roman

<<CreateToc with_counter=1 firstlevelstyle=roman>>

See Also

Known Problems

  • If you include pages via Template or IncludePage plugins, the Table of Contents will not contain the headers of the included pages.
  • The Table of Contents will be incorrect if a header contains:

    • a Template plugin call via {{ }},
    • an image,
    • or a ~.
  • If you preview the page, the Table of Contents will not be correct if you modified headers. The Table of Contents will be taken from the last saved revision.

Included from Help/CurrentTimePlugin

The CurrentTime plugin displays current time and date (when page was saved).

Usage

<<CurrentTime format=xxx>>

Arguments

Argument

Description

Default value

format

Display format (strftime format, or 'date' or 'time')

Date and time in ISO 8601:2004 format

Examples

<<CurrentTime>>
2024-03-28 21:34:35
<<CurrentTime format=date>>
2024-03-28
<<CurrentTime format=time>>
21:34:35
<<CurrentTime format='%d %h %Y %H h %M m %S s %Z'>>
28 Mar 2024 21 h 34 m 35 s CET

Author

  • Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/DeadEndPagesPlugin

The DeadEndPages plugin returns a list of pages which are not linked to by any other page.

It is simply an alias for OrphanedPages plugin.

Included from Help/DebugAuthInfoPlugin

Administrative plugin, used to debug auth problems and settings. This plugin is only for testing purposes. If DEBUG has no _DEBUG_LOGIN bit set, only the admin user can call it, which is of no real use.

Warning! This may display DB and user passwords in cleartext. We think we cleared everything out though.

Usage

<<DebugAuthInfo userid||=AdminUser>>

Arguments

Argument

Description

Default value

userid

Id of user to debug

Current user

Example

See DebugAuthInfo

Authors

See Also

Included from Help/DebugBackendInfoPlugin

Administrative plugin, used to debug DATABASE backend problems and settings. This plugin is only for testing purposes.

Displays all/most database infos about a page.

Warning! This may display db and user passwords in cleartext. We think we cleared everything out though.

Usage

<<DebugBackendInfo arguments>>

Arguments

Argument

Description

Default value

page

The page to execute upon

Current pagename

notallversions

Boolean. If true, only display information for the last version of the page.

false

Example

See DebugBackendInfo

Author

See Also

Included from Help/DebugGroupInfoPlugin

Administrative plugin, used to debug auth problems and settings. This plugin is only for testing purposes. If DEBUG has no _DEBUG_LOGIN bit set, only the admin user can call it, which is of no real use.

Warning! This may display db and user passwords in cleartext. We think we cleared everything out though.

Usage

<<DebugGroupInfo>>

Arguments

None.

Example

See DebugGroupInfo

Author

  • Charles Corrigan

See Also

Included from Help/DebugRetransformPlugin

Show a markup retransformation of a wiki page.

Usage

<<DebugRetransform arguments>>

Arguments

Argument

Description

Default value

page

The page to show markup retransformation from.

current pagename

Example

Retransform page “HomePage”

<div class="wikitext">
Cached_PluginInvocation Object
(
    [_pi] => <?plugin Template page="colorbox" text="&lt;strong&gt;~PhpWiki 1.6.4 has been published!&lt;/strong&gt; \\\\ You can download it at [[https://sourceforge.net/projects/phpwiki/]]." color="#73FF33" bordercolor="#006400" ?>
    [pi_name] => plugin
    [name] => Template
    [args] => page="colorbox" text="&lt;strong&gt;~PhpWiki 1.6.4 has been published!&lt;/strong&gt; \\\\ You can download it at [[https://sourceforge.net/projects/phpwiki/]]." color="#73FF33" bordercolor="#006400"
)
<p><br /></p>
<ul><li>What is a 
Cached_InterwikiLink Object
(
    [_url] => 
    [_relation] => 
    [_link] => Help:WikiWikiWeb
    [_label] => WikiWikiWeb
)
? A description of this application.</li>
<li>Learn 
Cached_InterwikiLink Object
(
    [_url] => 
    [_relation] => 
    [_link] => Help:HowToUseWiki
    [_label] => HowToUseWiki
)
 and learn about 
Cached_InterwikiLink Object
(
    [_url] => 
    [_relation] => 
    [_link] => Help:AddingPages
    [_label] => AddingPages
)
.</li>
<li>Use the 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => SandBox
    [_basepage] => 
)
 page to experiment with Wiki pages.</li>
<li>Please sign your name in 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => RecentVisitors
    [_basepage] => 
)
.</li>
<li>See 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => RecentChanges
    [_basepage] => 
)
 for the latest page additions and changes.</li>
<li>Find out which pages are 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => MostPopular
    [_basepage] => 
)
.</li>
<li>Read the 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => ReleaseNotes
    [_basepage] => 
)
 and 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => RecentReleases
    [_basepage] => 
)
.</li>
<li>Administer this wiki via 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => PhpWikiAdministration
    [_basepage] => 
)
.</li>
<li>See more 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => PhpWikiDocumentation
    [_nolink] => 1
    [_basepage] => 
)
 and 
Cached_WikiLink Object
(
    [_url] => 
    [_relation] => 
    [_page] => PhpWikiManual
    [_basepage] => 
)
.</li>
</ul>
</div>

Links

Array
(
    [linkto] => colorbox
)
Array
(
    [linkto] => SandBox
)
Array
(
    [linkto] => RecentVisitors
)
Array
(
    [linkto] => RecentChanges
)
Array
(
    [linkto] => MostPopular
)
Array
(
    [linkto] => ReleaseNotes
)
Array
(
    [linkto] => RecentReleases
)
Array
(
    [linkto] => PhpWikiAdministration
)
Array
(
    [linkto] => PhpWikiManual
)

Author

See Also

Included from Help/DiffPlugin

The Diff plugin displays differences between revisions of a wiki page.

Usage

<<Diff arguments>>

Arguments

Argument

Description

Default value

pagename

The page to execute upon

current pagename

version

The newest version of the page

latest version

previous

author, minor or major

major

Examples

<<Diff pagename=HomePage>>

Differences between current version and predecessor to the previous major change of HomePage.

Other diffs: Previous Revision, Previous Author

Newer page: version 21 Last edited on 13 March 2024 20:33 by admin
Older page: version 20 Last edited on 6 February 2024 10:53 by 24.134.121.41
@@ -1,6 +1,6 @@
 {{colorbox 
-|text=<strong>~PhpWiki 1.6.3 has been published!</strong> \\\\ You can download it at [[https://sourceforge.net/projects/phpwiki/]]. 
+|text=<strong>~PhpWiki 1.6.4 has been published!</strong> \\\\ You can download it at [[https://sourceforge.net/projects/phpwiki/]]. 
 |color=#73FF33 
 |bordercolor=#006400 
 }} 
 \\ 
@@ -12,7 +12,4 @@
 * Find out which pages are [[MostPopular]]. 
 * Read the [[ReleaseNotes]] and [[RecentReleases]]. 
 * Administer this wiki via [[PhpWikiAdministration]]. 
 * See more [[:PhpWikiDocumentation]] and [[PhpWikiManual]]. 
-* Wow! Look at [[TestPage]].  
-\\  
-<?plugin-form CreatePage template=CategoryHomePages ?>  
<<Diff pagename=HomePage version=4>>

Differences between version 4 and predecessor to the previous major change of HomePage.

Other diffs: Previous Revision, Previous Author

Newer page: version 4 Last edited on 17 August 2023 14:27 by admin
Older page: version 2 Last edited on 13 July 2023 14:53 by admin

Content of versions 2 and 4 is identical.

<<Diff pagename=HomePage version=4 previous=minor>>

Differences between version 4 and previous revision of HomePage.

Other diffs: Previous Major Revision, Previous Author

Newer page: version 4 Last edited on 17 August 2023 14:27 by admin
Older page: version 3 Last edited on 28 July 2023 22:42 by 85.10.99.224
@@ -1,17 +1,5 @@
-  
-{| class="bordered"  
-|+ This is the table caption  
-|-  
-! Header A !! Header B !! Header C  
-|-  
-| Cell A1 || Cell B1 || Cell C1  
-|-  
-| Cell A2 || Cell B2 || Cell C2  
-|-  
-| Cell A3 || Cell B3 || Cell C3  
-|}  
-| | {{colorbox 
+{{colorbox 
 |text=<strong>~PhpWiki 1.6.2 has been published!</strong> \\\\ You can download it at [[https://sourceforge.net/projects/phpwiki/]]. 
 |color=#E9F1FA 
 |bordercolor=#00ABE4 
 }} 
@@ -24,7 +12,4 @@
 * Find out which pages are [[MostPopular]]. 
 * Read the [[ReleaseNotes]] and [[RecentReleases]]. 
 * Administer this wiki via [[PhpWikiAdministration]]. 
 * See more [[:PhpWikiDocumentation]] and [[PhpWikiManual]]. 
-  
-----  
-[[CategoryHomePages]]  
<<Diff pagename=HomePage previous=author>>

Differences between current version and revision by previous author of HomePage.

Other diffs: Previous Major Revision, Previous Revision

Newer page: version 21 Last edited on 13 March 2024 20:33 by admin
Older page: version 20 Last edited on 6 February 2024 10:53 by 24.134.121.41
@@ -1,6 +1,6 @@
 {{colorbox 
-|text=<strong>~PhpWiki 1.6.3 has been published!</strong> \\\\ You can download it at [[https://sourceforge.net/projects/phpwiki/]]. 
+|text=<strong>~PhpWiki 1.6.4 has been published!</strong> \\\\ You can download it at [[https://sourceforge.net/projects/phpwiki/]]. 
 |color=#73FF33 
 |bordercolor=#006400 
 }} 
 \\ 
@@ -12,7 +12,4 @@
 * Find out which pages are [[MostPopular]]. 
 * Read the [[ReleaseNotes]] and [[RecentReleases]]. 
 * Administer this wiki via [[PhpWikiAdministration]]. 
 * See more [[:PhpWikiDocumentation]] and [[PhpWikiManual]]. 
-* Wow! Look at [[TestPage]].  
-\\  
-<?plugin-form CreatePage template=CategoryHomePages ?>  

Author

See Also

Included from Help/DynamicIncludePagePlugin

The DynamicIncludePage plugin will asynchronously “include” other pages in this wiki.

Usage

<<DynamicIncludePage arguments>>

Arguments

All arguments from IncludePage plugin are supported, plus the following one.

Argument

Description

Default value

state

initial state: false <=> [+], true <=> [-]

false

Example

<<DynamicIncludePage page=SandBox>>

Click to hide/show SandBox :

Author

See Also

Included from Help/EditMetaDataPlugin

The EditMetaData plugin allows you to add/edit/delete metadata key/value pairs for a given page. You must be logged in as the administrator to do this. The page's metadata contains things like the page hit count, last edit time and so on.

<<EditMetaData argument>>

Argument

Argument

Description

Default value

page

Which page to edit

Current page.

Examples

Editing the metadata for the HomePage would look like this:

<<EditMetaData page="HomePage">>

With no arguments the plugin defaults to the current page:

<<EditMetaData>>

Included from Help/ExternalSearchPlugin

The ExternalSearch plugin creates a form to query InterWikis or other internet sites.

Usage

<<ExternalSearch
         url="InterWiki or URL"
         name="button text"
>>

Arguments

Argument

Description

Default value

url

Specify a wiki from the InterWikiMap or a URL. Any text entered by the user will be appended to the search URL. The string placeholder '%s' can be used to insert a search query into the URL rather than appending it.

name

Text to display in the submit button.

For InterWiki sites the default is the wiki name, for other URLs the default is the text “External Search”.

formsize

Specify the input area size.

30 characters

debug

Boolean. If true, don't really redirect to the external site, just print out the URL that would be redirected to.

false

Examples

  url="http://sunir.org/apps/meta.pl?"       name="Metawiki Search"
  url="http://www.usemod.com/cgi-bin/mb.pl?" name="MeatBall Search"
  url=php-lookup
  url=php-function
  url=PhpWiki

Perform a full-text search on multiple wiki's:

Perform a full-text search on MeatBall wiki:

Search the PHP web site for a function name:

Enter the name of a PHP function to view the documentation page:

Enter any existing page name on PhpWiki to jump to that page:

See Also

Included from Help/FacebookLikePlugin

The FacebookLike plugin will include a Facebook “Like” button in your wiki page.

Usage

<<FacebookLike arguments>>

Arguments

Argument

Description

Default value

width

Button width

450

height

Button height

35

colorscheme

'light' or 'dark'

light

show_faces

false

layout

'standard' or 'button_count'

standard

action

'like' or 'recommend'

like

Examples

Author

See Also

Included from Help/FileInfoPlugin

The FileInfo plugin displays the date, size, path, etc. of an uploaded file. Only files relative and below to the uploads path can be handled.

Typical Usage

<<FileInfo file=Upload:image.png display=size,date >>
<<FileInfo file=Upload:image.png display=name,size,date
                                 format="%s (size: %s, date: %s)" >>

Arguments

Argument

Description

Default value

file

Relative path from PHPWIKI_DIR.

none (required argument)

display

Comma-separated string of size, phonysize, date, mtime, owner, group, name, path, dirname, mime, link

none (required argument)

format

printf format string with %s only, all display modes from above vars return strings

(optional)

quiet

Boolean. If true, print no error if file is not found.

false

Example

This wiki was installed at <<FileInfo file=config/config.ini display=date>>.

This wiki was installed at 2023-07-13 13:31:23.

Included from Help/FoafViewerPlugin

The FoafViewer plugin is written to facilitate the viewing of FOAF / RDF files in human readable form. Please note, it provides only basic features at this time.

Usage

<<FoafViewer foaf=http://www.myfoaf.com/foaf.rdf>>
/FoafViewerPlugin?foaf=http://www.myfoaf.com/foaf.rdf

Download

http://www.ahsonline.com.au/dod/FoafViewerPlugin.zip

Example

<<FoafViewer foaf=http://www.ahsonline.com.au/dod/FOAF.rdf>>

Included from Help/FullTextSearchPlugin

The FullTextSearch plugin searches the content of all pages in this wiki.

Usage

<<FullTextSearch arguments>>

Arguments

All PageList arguments (except paganame), plus the following ones:

Argument

Description

Default value

s

The search term

none (mandatory argument)

hilight

Boolean. If true, highlight results.

true

case_exact

Boolean. If true, search with case exact.

false

regex

Type of regular expression used for searching

auto

sortby

Sorting order for results

-hi_content

noheader

Boolean. If true, header should be omitted.

false

exclude

Comma-separated list of glob to exclude

false

quiet

Boolean. If true, be less verbose.

true

Example

<<FullTextSearch s=boolean>>

Full text search results for “boolean”

Help/LinkDatabasePlugin

| Boolean. If true, header should be omitted.

Help/WikiPollPlugin

| Boolean: if true, all questions must be answered

| Boolean: if true, an administrator can view and reset statistics (//not yet implemented//)

Help/WikiForumPlugin

| Boolean. If true, header should be omitted.

Help/WikiAdminSetExternalPlugin

| Boolean. If true, set the page to external.

Help/WikiAdminSelectPlugin

| Boolean. If true, header should be omitted.

| Boolean. If true, pages that are referenced but not yet created are included in the list.

Help/WhoIsOnlinePlugin

| Boolean. If true, in summary mode, add a link to the detail mode.

| Boolean. If true, also display the fact that admin is online.

Help/UserRatingsPlugin

| Boolean. If true, header should be omitted.

| Boolean. If true, we're on a user's homepage, get **their** ratings

| Boolean.

Help/UnfoldSubpagesPlugin

| Boolean. If true, header should be omitted.

Help/TranscludePlugin

| Boolean. If true, frame appears as normal content.

Help/TitleSearchPlugin

| Boolean. If true and only one page is found, this page is displayed immediately

| Boolean. If true, header should be omitted.

| Boolean. If true, search with case exact.

Help/TemplatePlugin

| Boolean. If true, when including a named section show the heading.

Help/SiteMapPlugin

| Boolean. If true, get BackLinks for the first page and forward links for the rest. Only applicable when direction = 'forward'.

| Boolean. If true, then exclude any mentioned pages which don't exist yet. Only applicable when direction = 'forward'.

| Boolean. If true, include yourself in the results.

| Boolean. If true, header should be omitted.

Help/SemanticSearchPlugin

| Boolean. If true, search with case exact.

| Boolean. If true, don't show form with results.

| Boolean. If true, header should be omitted.

Help/SemanticSearchAdvancedPlugin

| Boolean. If true, search with case exact.

| Boolean. If true, don't show form with results.

| Boolean. If true, header should be omitted.

Help/SemanticRelationsPlugin

| Boolean. If true, header should be omitted.

| Boolean. If true, do not display help.

Help/SearchHighlightPlugin

| Boolean. If true, header should be omitted.

| Boolean. If true, print the list of lines with lines terms additionally.

| Boolean. If true, highlight only case exact searches. Not yet supported.

Help/RssFeedPlugin

| Boolean. If true, do not display item body.

Help/RecentReferrersPlugin

| Boolean. If true, header should be omitted.

Help/RandomPagePlugin

| Boolean. If true, do not display random page link, redirect to random page.

| Boolean. If true, hide name (only for numpages=1)

Help/PopularNearbyPlugin

| Boolean. If true, header should be omitted.

Help/PhotoAlbumPlugin

Boolean. If true, each image will be hyperlinked to a page where

Help/NewPagesPerUserPlugin

| Boolean. If true, pages that are comments are included (page names that include "/Comment").

| Boolean. If true, have a link to pages.

Help/ListSubpagesPlugin

| Boolean. If true, header should be omitted.

Help/LinkSearchPlugin

| Boolean. If true, search with case exact.

| Boolean. If true, don't show form with results.

| Boolean. If true, header should be omitted.

Help/IncludeTreePlugin

| Boolean. If true, include yourself in the results.

| Boolean. If true, header should be omitted.

| Boolean. If true, get BackLinks for the first page and forward links for the rest. Only applicable when direction = 'forward'.

| Boolean. If true, then exclude any mentioned pages which don't exist yet. Only applicable when direction = 'forward'.

Help/IncludeSiteMapPlugin

| Boolean. If true, include yourself in the results.

| Boolean. If true, header should be omitted.

Help/IncludePagePlugin

| Boolean. If true, inclusion appears as normal content.

| Boolean. If true, when including a named section show the heading.

Help/FullTextSearchPlugin

| Boolean. If true, highlight results.

| Boolean. If true, search with case exact.

| Boolean. If true, header should be omitted.

| Boolean. If true, be less verbose.

<<FullTextSearch s=boolean>>

Help/FileInfoPlugin

| Boolean. If true, print no error if file is not found.

Help/ExternalSearchPlugin

| Boolean. If true, don't really redirect to the external site, just print out the URL that would be redirected to.

Help/DebugBackendInfoPlugin

| Boolean. If true, only display information for the last version of the page.

Help/CreateTocPlugin

| Boolean. If true, provide a button to hide/display the Table of Contents.

| Boolean. If true, the Table of Contents should be initially hidden and on click expanded.

| Boolean. If true, the Table of Contents header should be omitted.

| Boolean. If true, the Table of Contents should no be displayed (headers are numbered).

| Boolean. If true, hierarchical prefixes should be added.

Help/CreatePagePlugin

| Boolean. If true, overwrite an existing page.

Help/BackLinksPlugin

| Boolean. If true, include yourself in the results.

| Boolean. If true, header should be omitted.

Help/AuthorHistoryPlugin

| Boolean. If true, page header should be omitted.

| Boolean. If true, include minor modifications.

| Boolean. If true, include deleted pages.

Help/AtomFeedPlugin

| Boolean. If true, only displays the title of the entry.

Help/AppendTextPlugin

| Boolean. If true, redirect to modified page.

Help/AllUsersPlugin

| Boolean. If true, header should be omitted.

| Boolean. If true, shows also users which stored their preferences, but never saved their homepage.

Help/AddCommentPlugin

| Boolean. If true, the comments and/or textbox should be initially hidden and on click expanded.

| Boolean. If true, the “Comments” header should be omitted.

Help/OrphanedPagesPlugin

| Boolean. If true, header should be omitted.

| Boolean. If true, pages that are referenced but not yet created are included in the list.

Help/MostPopularPlugin

| Boolean. If true, header should be omitted.

Help/WantedPagesPlugin

| Boolean. If true, display links.

| Boolean. If true, header should be omitted.

ReleaseNotes

* Better check boolean arguments in plugins

* added boolean UPLOAD_USERDIR to upload into user-specific directory.

Help/WikiAdminRenamePlugin

| Boolean. If true, create a redirect page from the old to the new pagename.

| Boolean. If true, change pagename in all linked pages also. \\ //not yet implemented//

Help/VideoPlugin

| Boolean. If true, auto play the video when page is displayed.

Help/AllPagesPlugin

| Boolean. If true, header should be omitted.

| Boolean. If true, pages that are referenced but not yet created are included in the list.

| Boolean. If true, display only pages created by users (not the ones created at initialisation of the wiki).

Help/PagePermissions

Boolean permissions per page and action (**granted** or **denied**) based on the current users

Author

See Also

Included from Help/FuzzyPagesPlugin

The FuzzyPages plugin will search for similar page titles.

Pages are considered similar by averaging the similarity scores of the spelling comparison and the metaphone comparison for each page title in the database (PHP's metaphone() is an improved soundex function).

Usage

<<FuzzyPages s=pagename>>

Arguments

Argument

Description

Default value

s

Pagename to look for

none (mandatory argument)

Example

<<FuzzyPages s=HomePage>>
These page titles match fuzzy with “HomePage
Name Score
HomePage 100
HomePageAlias 78
RandomPage 63
CategoryHomePages 63
Help/Images 56
ModeratedPage 56
Help/PageList 54
TestPage 53
LikePages 52
LockedPages 52
Help/ActionPage 51
CreatePage 50
PageInfo 50
WatchPage 49
Help/AddingPages 48
Help/RandomPagePlugin 48
FindPage 47
AllPages 47
PageDump 47
Help 45
WantedPages 44
FuzzyPages 44
Help/TemplatePlugin 44
SpecialPages 43
AllUserPages 43
Help/CommentPlugin 43
Template/UserPage 43
Help/PageDumpPlugin 42
Help/PageInfoPlugin 42
Help/AllPagesPlugin 42
Help/CurrentTimePlugin 42
Help/PagePermissions 41
Help/PageGroupPlugin 41
Help/WatchPagePlugin 41
PageHistory 41
Help/ModeratedPagePlugin 41
Help/NoCachePlugin 41
Help/YouTubePlugin 41
OrphanedPages 40
Help/GoToPlugin 40
Help/DiffPlugin 40
Help/WikiPlugin 40
Help/PageTrailPlugin 40
Help/LikePagesPlugin 40
Help/SiteMapPlugin 40
Help/WikiFormPlugin 40
Help/PopUpPlugin 40
Help/AddCommentPlugin 39
Help/CreatePagePlugin 39
Help/FuzzyPagesPlugin 39
RecentNewPages 39
Help/WikiForumPlugin 39
Help/ListPagesPlugin 39
Help/PhotoAlbumPlugin 39
Help/AtomFeedPlugin 39
NewPagesPerUser 38
Help/ChartPlugin 38
Help/DynamicIncludePagePlugin 38
RecentChangesMyPages 38
Help/IncludePagePlugin 38
Help/PageHistoryPlugin 38
Help/UpLoadPlugin 37
Help/RateItPlugin 37
Help/GoogleMapsPlugin 37
Help/Jeff Dairiki 37
Help/WantedPagesPlugin 37
Help/DeadEndPagesPlugin 36
Help/IncludePagesPlugin 36
Help/WikiAdminRenamePlugin 36
Help/AsciiMathPlugin 36
PluginManager 36
Help/VideoPlugin 36
Help/WhoIsOnlinePlugin 35
Help/OrphanedPagesPlugin 35
Help/RawHtmlPlugin 35
Help/AsciiSVGPlugin 35
Help/WikiPollPlugin 35
Help/PluginManagerPlugin 35
AllPagesByAcl 34
MyRecentChanges 34
Help/Categories 34
MostPopular 34
Help/FacebookLikePlugin 34
Help/CalendarPlugin 34
Help/GraphVizPlugin 34
Help/PloticusPlugin 34
Help/SyncWikiPlugin 34
CategoryActionPage 34
Help/NewPagesPerUserPlugin 33
Help/MostPopularPlugin 33
Help/PopularTagsPlugin 33
Help/PhpWiki 33
Help/RecentCommentsPlugin 33
Help/CacheTestPlugin 33
Help/RichTablePlugin 33

Author

See Also

Included from Help/GoToPlugin

The GoTo plugin displays a form with text entry box and 'Go' button. The user enters a page name... if it exists, browse that page; if not, edit (create) that page.

Note: pagenames are absolute, not relative to the actual subpage.

Usage

<<GoTo>>

Arguments

None.

Example

<<GoTo>>

Authors

See Also

Included from Help/GoogleMapsPlugin

The GoogleMaps plugin displays a marker with further infos (when clicking) on given coordinates.

You need to sign up for a Google Maps API key!

http://www.google.com/apis/maps/signup.html

Then enter the key in config/config.ini under GOOGLE_LICENSE_KEY=

Usage

<<GoogleMaps arguments>>

Arguments

Argument

Description

Default value

Longitude

Longitude

none (required argument)

Latitude

Latitude

none (required argument)

ZoomFactor

Zoom factor

5

Marker

true

InfoText

none

MapType

Map or Satellite or Hybrid

Hybrid

SmallMapControl

large or small

false

width

width

500px

height

height

400px

Example

<<GoogleMaps
          Latitude=53.053
          Longitude=7.803
          ZoomFactor=10
          Marker=true
          MapType=Hybrid
          width=500px
          height=400px
>>

Author

See Also

Included from Help/GooglePluginPlugin

The GooglePlugin plugin is a wrapper for the Google Web APIs. It allows you to do Google searches, retrieve pages from the Google cache, and ask Google for spelling suggestions.

Note: You must first obtain a license key at http://www.google.com/apis/

Max 1000 queries per day.

Usage

<<GooglePlugin arguments>>

Arguments

Argument

Description

Default value

q

mode

search, cache or spell

search

startIndex

1

maxResults

10

formsize

30

Example

<<GooglePlugin>>

Author

See Also

Included from Help/GraphVizPlugin

The GraphViz plugin passes all its arguments to the graphviz dot binary and displays the result as cached image (PNG, GIF, SVG) or imagemap. See http://www.graphviz.org/Documentation.php, esp. http://www.graphviz.org/doc/info/lang.html for the dot language specs.

Notes

  • We support all image types supported by GD so far, PNG most likely.
  • On imgtype = imap, cpamx, ismap, cmap an additional mapfile will be produced.

Usage

<<GraphViz [options...]
   multiline dot script ...
>>

Arguments

Argument

Description

Default value

imgtype

Image type

png

alt

Image alternate text

pages

<! plugin-list support !> encoded as pagename = [ URL = url ]

exclude

Comma-separated list of pages to exclude

help

Display argument help

Example

<<GraphViz
digraph automata_0 {
        size ="8.5, 11";
        node  [ shape  = circle];
        0 [ style = filled, color=lightgrey ];
        2 [ shape = doublecircle ];
        0 -> 2 [ label = "a " ];
        0 -> 1 [ label = "other " ];
        1 -> 2 [ label = "a " ];
        1 -> 1 [ label = "other " ];
        2 -> 2 [ label = "a " ];
        2 -> 1 [ label = "other " ];
        "Machine: a" [ shape = plaintext ];
}
>>

Author

See Also

  • VisualWiki plugin, which depends on GraphViz and WikiPluginCached.

Included from Help/HelloWorldPlugin

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'$salutationWikiLink($name'auto')),
                         
THE_END);
        return 
$html;
    }
};

Included from Help/HtmlConverterPlugin

The HtmlConverter plugin will convert HTML tags as far to Wiki markup as possible and eliminate all other HTML markup, so the output can be copied and pasted into a wiki page.

Usage

<<HtmlConverter>>

Arguments

None.

Example

<<HtmlConverter>>


Authors

See Also

Included from Help/IncludePagePlugin

The IncludePage plugin will “include” other pages in this wiki. In the language of hypertext this is called transclusion.

Usage

<<IncludePage page=OtherPage rev=6 quiet=1 words=50 lines=6>>

Arguments

Argument

Description

Default value

page

The page to include.

none (required argument)

rev

Page revision.

most recent revision

quiet

Boolean. If true, inclusion appears as normal content.

false

bytes

Maximum number of bytes to include.

none (include whole page)

words

Maximum number of words to include.

none (include whole page)

lines

Maximum number of lines to include.

none (include whole page)

sections

Maximum number of sections to include.

none (include all sections)

section

Include a named section.

none

sectionhead

Boolean. If true, when including a named section show the heading.

false

Inclusion

is stripped.

.. is only expanded in included pages.

Examples

IncludePage page=Help/AllPagesPlugin

Included from Help/AllPagesPlugin

The AllPages plugin lists all pages in this wiki.

Usage

<<AllPages arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

include_empty

Boolean. If true, pages that are referenced but not yet created are included in the list.

false

info

Allows multiple columns: info=mtime,hits,summary,version,author,locked,minor or all

empty

userpages

Boolean. If true, display only pages created by users (not the ones created at initialisation of the wiki).

false

Example

<<AllPages limit=20 cols=3>>

All pages in this wiki (280 total):

|<<   << - 1 / 14 - Next >>   >>|

Author

See Also

IncludePage page=Help/AllPagesPlugin lines=6

Included from Help/AllPagesPlugin

The AllPages plugin lists all pages in this wiki.

Usage

<<AllPages arguments>>

... first 6 lines

IncludePage page=Help/AllPagesPlugin section="Arguments"

Included from Help/AllPagesPlugin

All PageList arguments, plus the following ones:

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

include_empty

Boolean. If true, pages that are referenced but not yet created are included in the list.

false

info

Allows multiple columns: info=mtime,hits,summary,version,author,locked,minor or all

empty

userpages

Boolean. If true, display only pages created by users (not the ones created at initialisation of the wiki).

false

IncludePage page=Help/AllPagesPlugin section="Arguments" sectionhead=true

Included from Help/AllPagesPlugin

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

include_empty

Boolean. If true, pages that are referenced but not yet created are included in the list.

false

info

Allows multiple columns: info=mtime,hits,summary,version,author,locked,minor or all

empty

userpages

Boolean. If true, display only pages created by users (not the ones created at initialisation of the wiki).

false

IncludePage page=Help/AllPagesPlugin sections=2

Does not work in Wikicreole syntax

Known Problems

  • Line and word limit doesn't work if the included page itself includes a plugin.
  • "sections" parameter does not work if sections to include are in Wikicreole syntax.
  • "section" parameter does not always work if sections to include use both Wikicreole/Mediawiki and classic Phpwiki syntax.

Authors

  • Joe Edelman
  • bug fixes by Reini Urban
  • "sections" parameter implemented by Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/IncludePagesPlugin

The IncludePages plugin will "include" a list of multiple pages, based on IncludePage plugin.

Usage

<<IncludePages arguments >>

Arguments

All arguments from IncludePage plugin, plus the following ones:

Argument

Description

Default value

pages

The pages to include.

empty

exclude

Comma-separated list of pages to exclude.

empty

Example

<<IncludePages pages=<!plugin-list BackLinks !> >>

Included from SpecialPages

Included from HomePage

PhpWiki 1.6.4 has been published!
You can download it at https://sourceforge.net/projects/phpwiki/.


Author

See Also

Included from Help/IncludeSiteMapPlugin

This is a quick mod of BackLinks plugin to do the job recursively. If your site is categorized correctly, and all the categories are listed in CategoryCategory, then a recursive BackLinks there will produce a contents page for the entire site.

The list is as deep as the recursion level (reclimit).

Usage

<<IncludeSiteMap direction=back|forward reclimit=4>>

Arguments

Argument

Description

Default value

exclude

Comma-separated list of pages to exclude

empty

include_self

Boolean. If true, include yourself in the results.

false

noheader

Boolean. If true, header should be omitted.

false

page

Page from which site map starts

The current page

description

Override default description. Printed as header.

Default description

reclimit

Max recursion depth.

2

info

Info to display in the table

false

direction

Get BackLinks or forward links (links listed on the page)

back

firstreversed

If true, get BackLinks for the first page and forward links for the rest. Only applicable when direction = 'forward'.

false

excludeunknown

If true, exclude any mentioned pages which don't exist yet. Only applicable when direction = 'forward'.

true

includepages

Passed verbatim to the IncludePage plugin.

words=50

Example

<<SiteMap page=PhpWikiDocumentation>>

Recursively get BackLinks or links. (max. recursion level: 4):

Author

See Also

Included from Help/IncludeTreePlugin

Display Dynamic Category Tree.

Usage

<<IncludeTree arguments>>

Arguments

Argument

Description

Default value

exclude

Comma-separated list of pages to exclude

empty

include_self

Boolean. If true, include yourself in the results.

false

noheader

Boolean. If true, header should be omitted.

false

page

The page to start the include tree

The current page

description

Override default description. Printed as header.

Default description

reclimit

Max recursion depth.

2

info

Info to display in the table

false

direction

Get BackLinks or forward links (links listed on the page)

back

firstreversed

Boolean. If true, get BackLinks for the first page and forward links for the rest. Only applicable when direction = 'forward'.

false

excludeunknown

Boolean. If true, then exclude any mentioned pages which don't exist yet. Only applicable when direction = 'forward'.

true

includepages

words=100

category

empty

dtree

true

Example

<<IncludeTree>>

Author

See Also

Included from Help/InterWikiSearchPlugin

The InterWikiSearch plugin performs searches on InterWiki sites listed in InterWikiMap.

Usage

<<InterWikiSearch arguments>>

Arguments

Argument

Description

Default value

s

The search term

none (mandatory argument)

formsize

30

Example

<<InterWikiSearch>>
Plugin InterWikiSearch disabled. Sorry, this plugin is currently out of order.
<?plugin InterWikiSearch?>

Author

See Also

Included from Help/JabberPresencePlugin

The JabberPresence plugin shows Jabber presence status.

Usage

<<JabberPresence arguments>>

Arguments

Argument

Description

Default value

scripturl

http://edgar.netflint.net/status.php

jid

type

image

iconset

gabber

Example

<<JabberPresence scripturl=http://edgar.netflint.net/status.php
                 jid=yourid@jabberserver type=html iconset=phpbb >>

Author

  • Arnaud Fontaine

See Also

Included from Help/LdapSearchPlugin

The LdapSearch plugin displays a LDAP query as table.

Usage

<<LdapSearch>>
<<LdapSearch
           host="localhost"
           port=389
           basedn=""
           filter="(cn=*)"
           attributes=""
>>
<<LdapSearch host=ldap.example.com filter="(ou=web-team)"
                      attributes="sn cn telephonenumber">>
<<LdapSearch host="ldap.itd.umich.edu" basedn="" filter="(sn=jensen)" attributes="cn drink">>
<<LdapSearch host=ldap.example.com attributes="cn sn telephonenumber">>
<<LdapSearch host=bugs.debian.org port=10101 basedn="dc=current,dc=bugs,dc=debian,dc=org"
                      filter="(debbugsPackage=phpwiki)"
                      attributes="debbugsSeverity debbugsState debbugsTitle">>

Arguments

Argument

Description

Default value

host

hostname or ip or ldap:// uri to connect to.

from LDAP_AUTH_HOST or localhost

port

portnumber to connect to.

from LDAP_AUTH_HOST or 389

basedn

connect string: "ou=Users,o=Development,dc=mycompany.com"

LDAP_BASE_DN

filter

Optional ldap_search() filter argument

"(cn=*)"

attributes

space separated fields to return as table columns: "cn sn"

empty

options

ldap_set_option(). Column separated name=value pairs. Esp. needed for Windows Active directory: "LDAP_OPT_PROTOCOL_VERSION=3:LDAP_OPT_REFERRALS=0"

LDAP_SET_OPTION if host == LDAP_AUTH_HOST

user

user and password are required for Windows Active directory.

Default: LDAP_AUTH_USER if host == LDAP_AUTH_HOST

password

user and password are required for Windows Active directory.

Default: LDAP_AUTH_PASSWORD if host == LDAP_AUTH_HOST

Examples

host 
port 
basedn 
filter 
attributes 

Author

  • John Lines

See Also

Included from Help/LikePagesPlugin

The LikePages plugin lists page names which share an initial or final title word with a given page.

Usage

<<LikePages arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

page

The page to execute upon

current pagename

prefix

List only pages that share the same prefix

empty

suffix

List only pages that share the same suffix

empty

Examples

<<LikePages page=HomePage>>

These pages share an initial or final title word with “HomePage

<<LikePages suffix=Page>>

Page names with suffix “Page”

Author

See Also

Included from Help/LinkDatabasePlugin

LinkDatabase is a plugin to list all pages with all links in various formats for some Java Visualization tools.

Usage

<<LinkDatabase arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

format

'html', 'text', 'xml'

html

noheader

Boolean. If true, header should be omitted.

false

exclude_from

false

Example

<<LinkDatabase limit=10>>
All pages with all links in this wiki (280 total):
|<<   << - 1 / 28 - Next >>   >>|
|<<   << - 1 / 28 - Next >>   >>|
Page Name. Links.
AllPages CategoryActionPage AllUserPages OrphanedPages
AllPagesCreatedByMe CategoryActionPage
AllPagesLastEditedByMe CategoryActionPage
AllPagesOwnedByMe CategoryActionPage
AllUsers CategoryActionPage UserPreferences
AppendText CategoryActionPage
BackLinks CategoryActionPage
CategoryActionPage CategoryCategory
CategoryWikiPlugin CategoryCategory
CreatePage CategoryActionPage

Author

See Also

Included from Help/LinkSearchPlugin

Search in pages for links with the matching name.

Usage

<<LinkSearch arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

s

linkvalue query string

*

page

which pages (glob allowed)

* (all)

direction

out or in

out

case_exact

Boolean. If true, search with case exact.

false

regex

no word splitting, if no regex op is present, defaults to exact match

auto

noform

Boolean. If true, don't show form with results.

false

noheader

Boolean. If true, header should be omitted.

false

Example

<<LinkSearch>>
Search in pages for links with the matching name.
=>   

Author

See Also

Included from Help/ListPagesPlugin

The ListPages plugin is the simplest plugin to explicitly list a set of pages with all available PageList options, mainly used for a wikilens theme to display ratings info and recommendations.

It can also be used with the PluginList method to list a set of pages generated by another plugin, and/or to exclude a set of pages generated by another plugin.

See the PageList options.

Usage

<<ListPages arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

pages

Pages to list

false

dimension

0

Additional info arguments

top3recs recommendations (wikilens theme only)
numbacklinks number of backlinks (links to the given page)
numpagelinks number of forward links (links at the given page)

Examples

<<ListPages pages=HomePage,FindPage>>
<<ListPages info=hits
            sortby=hits
            pages=<!plugin-list BackLink page=[] !>
            exclude=ListPagesPlugin,WikiPlugin
>>

Included from Help/ListSubpagesPlugin

The ListSubpages plugin lists the names of all sub-pages of a given page (by default the current page).

Usage

<<ListSubpages arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

basepage

The page to execute upon

Current pagename

maxpages

Maximum number of pages to include

0

noheader

Boolean. If true, header should be omitted.

false

info

List of columns to display

empty

exclude

Comma-separated list of pages to exclude

empty

Example

<<ListSubpages basepage=Help maxpages=20 cols=3>>

SubPages of PhpWikiManual:

Author

See Also

Included from Help/MediawikiTablePlugin

The MediawikiTable plugin allows a user to specify a <table> with (a subset of) the syntax used by Mediawiki. The plugin is not meant to be called directly, just use the syntax below to insert your table.

Mediawiki table syntax

  • The table starts with a line {|.
  • An optional table caption is made with a line starting with a pipe and a plus sign |+ followed by the caption.
  • A table row starts with a pipe and a hyphen: |-.
  • A table cell starts with a pipe on a new line, or a double bar || on the same line.
  • A header table cell starts with an exclamation mark, or a double exclamation mark !! on the same line.
  • The table ends with a line |}.

If the first row of the table as made with header cells only, this row will be put in a thead. In that case, this row will be repeated on every page when printing the table.

HTML attributes

Attribute

Syntax

For the table

{| border="1"

For the caption

|+ style="font-weight: bold;"

For a row

|- style="height:100px"

For a cell

| align="right" | Cell 2 (right aligned)

The attributes might be put with or without double quotes.

Predefined CSS classes

If you do not specify a class for the table, it will be rendered without border.

Boxed and bordered tables

If you specify class="boxed", you will have a border around the table (but not around the cells).

If you specify class="bordered", you will have a border around the table and the cells

In both cases, the caption (if any) will be bold and centered under the table

In both cases, the headers (specified by !) will have a "#d8d8d8" background

Sortable tables

If you specify class="sortable", the table columns will be sortable. An icon will be put in the headers to show the table is sortable. Clicking on a column header will sort that column. You can sort multiple columns with shift click.

Do not break table when printing

If you specify class="nobreak", the table will not be cut when printed (if your browser supports it).

Examples

Example 1: simple table

This is the table caption

Header 1

Header 2

Header 3

Cell I

Cell II, in bold

Cell III

Cell 1

Cell 2

Cell 3

The above table is rendered from:

{| border="1" style="width: 100%"
|+ style="font-weight: bold; font-size: 150%;" | This is the table caption
|- style="white-space: nowrap"
! Header 1
! Header 2
! Header 3
|- style=height:100px
| Cell I
| **Cell II**,  in bold
|align=right width="100%" |Cell III
|- bgcolor=#f0f0ff align=center
|Cell 1||Cell 2||Cell 3
|}

Example 2: table with paragraphs, lists and plugins in cells

Header 1

Header 2

First paragraph.

Second paragraph.

  • One
  • Two
  • Three

Current date

2024-03-28

The above table is rendered from:

{|
|- style="white-space: nowrap"
! Header 1
! Header 2
|- bgcolor=yellow
| First paragraph.

Second paragraph.
|
* One
* Two
* Three
|- bgcolor=#f0f0ff align=center
|Current date || <<CurrentTime format=date>>
|}

Example 3: sortable table

Click on a column header to sort the column. Clicking a second time will reverse the sorting order.

First name

Name

Age

John

Smith

35

Albert

Wells

5

Sam

Adam

102

The above table is rendered from:

{| class="bordered sortable"
|-
! First name !! Name !! Age
|-
| John || Smith || 35
|-
| Albert || Wells || 5
|-
| Sam || Adam || 102
|}

Example 4: nested tables

Outer table caption

Header A

Header B

A numbered list:

  1. one
  2. two
  3. three

This cell contains a nested table.

Inner table caption

Header A

Header B

Inner A1

Inner B1

Inner A2

Inner B2

A paragraph

Another paragraph

A plain list:

  • apple
  • pear
  • apricot

The above table is rendered from:

<<MediawikiTable
{| class="bordered" align=center
|+ Outer table caption
|-
! Header A !! Header B
|-
| A numbered list:
# one
# two
# three
|
This cell contains a nested table.
 {| class="bordered"
 |+ Inner table caption
 |-
 ! Header A
 ! Header B
 |-
 | Inner A1
 | Inner B1
 |-
 | Inner A2
 | Inner B2
 |}
|-
| A paragraph

Another paragraph

| A plain list:
* apple
* pear
* apricot
|}
>>

Author

  • Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/ModeratedPagePlugin

What is a ModeratedPage?

A ModeratedPage is a page-internal setting, which restricts certain actions on certain pages. The requested action and page is stored internally and an email is sent to the moderators described in the linked and locked ModeratedPage action page. Any moderator may approve or reject the action by simply clicking an URL. When approving the action, the requested action (edit, rename, ...) is performed.

In both cases the author is notified, so it's recommended for the moderator to click on either the approve or reject links in the moderation email. In case of multiple moderators: first comes, first serves.

How to enable ModeratedPage on a single page?

  • Check the status of this action page, esp. the moderators in the plugin line, if they had their emails stored in their UserPreferences, and if the action page is locked.
  • Add a link to this action page in the page(s) in question.
  • Save the page.
  • Lock the page to actually change the moderation status. You may want to unlock it then.

How to disable ModeratedPage on a single page?

  • Remove the link to this action page in the page(s) in question.
  • Save the page.
  • Lock the page to actually change the moderation status. You may want to unlock it then.

Usage

<<ModeratedPage arguments>>

Arguments

Argument

Description

Default value

moderators

comma-separated list of registered usernames or groups. Each user should have his email defined in his prefs.

"Administrators" or "admin"

requirelevel

one of 0, 1, 2 or 10 on which moderation is used

false (use requireaccess instead)

requireaccess

comma-separated list of access perms, on which the moderation is used "view,edit,create,list,remove,change"

edit,remove,change

Example

<<ModeratedPage>>

How does it work internally?

You need to lock the page additionally, so that the link parser performs some magic whether the ModeratedPage link is present or not, for efficiency reasons. It can be unlocked again, and even the ModeratedPage link may be removed. The status will only be changed on the lock action, whether the ModeratedPage link is present or not.

The moderation status is stored in each page in question. Each moderated action is stored in the page also, together with a randomly created permission key to allow Grant by a simple external unauthorized request. There's no timeout on moderated actions, so the actions may stack up. The delayed actions may be performed in any order, there's no strict ordering to follow for the moderator.

How to enable ModeratedPage on multiple/all pages?

If you enable the config option ENABLE_MODERATEDPAGE_ALL, the page moderation status on every page is automatically set to check this action page ModeratedPage.

There may come another administrative plugin to change the moderation status on selected pages.

Author

Included from Help/MostPopularPlugin

The MostPopular plugin will display the pages of wiki that have the most (or least) number of hits.

Usage

<<MostPopular arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

limit

The number of pages to display. If the limit is negative, the least popular pages will be displayed. If the limit is 0, all visited pages will be displayed.

20

sortby

Select column to sort.

-hits

noheader

Boolean. If true, header should be omitted.

false

info

List of columns to display

hits

Example

<<MostPopular limit=10>>
The 10 most popular pages of this wiki:
|<<   << - 1 / 27 - Next >>   >>|
|<<   << - 1 / 27 - Next >>   >>|
Page Name. HitsClick to reverse sort order
PhpWikiManual 246806
HomePage 10489
RecentChanges 3478
RecentNewPages 2985
RecentEdits 2950
FullRecentChanges 2927
RecentComments 2825
MyRecentChanges 2760
RecentChangesMyPages 2739
UserContribs 2552

Author

See Also

Included from Help/NewPagesPerUserPlugin

The NewPagesPerUser plugin lists all new pages per month per user in the wiki.

Usage

<<NewPagesPerUser arguments>>

Arguments

Argument

Description

Default value

userid

Limit to the pages created by a specific user.

empty

month

Limit to the pages created during a specific month.

empty

since

Limit to the pages created after a specific date.

empty

until

Limit to the pages created before a specific date.

empty

comments

Boolean. If true, pages that are comments are included (page names that include "/Comment").

false

links

Boolean. If true, have a link to pages.

true

Examples

<<NewPagesPerUser userid=admin>>
<<NewPagesPerUser month=September>>
<<NewPagesPerUser since=2021-08-20>>
<<NewPagesPerUser until="August 2021">>
<<NewPagesPerUser comments=true>>
<<NewPagesPerUser links=false>>

Author

See Also

Included from Help/NoCachePlugin

Don't cache the following page. Mostly used for plugins, which display dynamic content.

Usage

<<NoCache arguments>>

Arguments

Argument

Description

Default value

nocache

if nocache=purge, delete the whole cache for this page

1

Example

<<NoCache>>

Author

See Also

Included from Help/OldStyleTablePlugin

The OldStyleTable plugin can be used to include tables within a wiki page using the old-style markup syntax for tables.

This plugin is included for legacy only. We recommend to use Wikicreole tables or Mediawiki tables instead.

Usage

<<OldStyleTable caption="OldStyleTable" border||=2
||^  *Name*                |v *Cost*   |v *Notes*
| *First*     | *Last*
|> Jeff       |< Dairiki   |^  Cheap   |< Not worth it
|> Marco      |< Polo      | Cheaper   |< Not available
>>

will get you

OldStyleTable
 Name   Cost   Notes 
 First   Last 
 Jeff   Dairiki   Cheap   Not worth it 
 Marco   Polo   Cheaper   Not available 

Note that multiple |s lead to spanned columns, and vs can be used to span rows. A > generates a right justified column, < a left justified column and ^ a centered column (which is the default.)

Arguments

Argument

Description

Default value

caption

Any string

Empty string

border

Any number

1

cellspacing

Any number

1

cellpadding

Any number

1

Syntax

Note that within each table cell, new-style markup is used. You can only use inline markup --- no block level markup is allowed within table cells.

(Using old-style markup wouldn't make much sense, since one can't include multi-line plugin invocations using the old-style markup rules.)

See Also

Included from Help/OrphanedPagesPlugin

The OrphanedPages plugin returns a list of pages which are not linked to by any other page.

Usage

<<OrphanedPages arguments>>

Arguments

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

include_empty

Boolean. If true, pages that are referenced but not yet created are included in the list.

false

exclude

Comma-separated list of pages to exclude.

empty

info

List of columns to display.

empty (only the page name will be displayed)

sortby

Select column to sort.

pagename

limit

The number of pages to display. If the limit is 0, all orphaned pages will be displayed.

0

paging

auto (top + bottom rows if applicable)
top (top only if applicable)
bottom (bottom only if applicable)
none (don't page at all)

auto

Example

<<OrphanedPages limit=10 paging=none>>

Orphaned Pages in this wiki (168 total):

Author

See Also

Included from Help/PageDumpPlugin

The PageDump plugin allows to view a single page dump online.

Usage

<<PageDump arguments>>

Arguments

Argument

Description

Default value

page

Page to dump

pagename

format

'normal', 'forsvn', 'backup'

none

download

false

Example

<<PageDump page=HomePage>>

Preview: Page dump of HomePage

(normal formatting: latest revision only)
Date: Wed, 13 Mar 2024 20:33:07 +0100
Mime-Version: 1.0 (Produced by PhpWiki 1.6.4)
Message-Id:
<164-1710358387+0100-PhpWiki%3AHomePage@phpwiki.demo.free.fr>
Content-Type: application/x-phpwiki;
  pagename=HomePage;
  flags="";
  author=admin;
  owner=admin;
  version=21;
  lastmodified=1710358387;
  author_id=admin;
  summary=PhpWiki%201.6.4%20has%20been%20published%21;
  hits=10489
Content-Transfer-Encoding: binary

{{colorbox
|text=<strong>~PhpWiki 1.6.4 has been published!</strong> \\\\ You can
download it at [[https://sourceforge.net/projects/phpwiki/]].
|color=#73FF33
|bordercolor=#006400
}}
\\
* What is a [[Help:WikiWikiWeb|WikiWikiWeb]]? A description of this
application.
* Learn [[Help:HowToUseWiki|HowToUseWiki]] and learn about
[[Help:AddingPages|AddingPages]].
* Use the [[SandBox]] page to experiment with Wiki pages.
* Please sign your name in [[RecentVisitors]].
* See [[RecentChanges]] for the latest page additions and changes.
* Find out which pages are [[MostPopular]].
* Read the [[ReleaseNotes]] and [[RecentReleases]].
* Administer this wiki via [[PhpWikiAdministration]].
* See more [[:PhpWikiDocumentation]] and [[PhpWikiManual]].
Preview as developer format | Preview as backup format
Warning: Please use one of the downloadable versions rather than copying and pasting from the above preview. The wordwrap of the preview doesn't take nested markup or list indentation into consideration! PhpWiki developers should manually inspect the downloaded file for nested markup before rewrapping with emacs and checking into Subversion.
Download for backup | Download all revisions for backup | Download for Subversion

Author

See Also

Included from Help/PageGroupPlugin

The PageGroup plugin allows to browse pages groups.

Usage

<<PageGroup arguments>>

Arguments

Argument

Description

Default value

parent

none (required argument)

rev

false

section

"Contents"

label

loop

false

Examples

<<PageGroup parent=MyTableOfContents >>

<<PageGroup
         parent=MyTableOfContents
         label="Visit more pages in MyTableOfContents"
>>

<<PageGroup parent=MyTableOfContents section=PartTwo loop=true >>

<<PageGroup parent=MyTableOfContents loop=1 >>

Author

See Also

Included from Help/PageHistoryPlugin

The PageHistory plugin lists history of a given page.

Usage

<<PageHistory arguments>>

Arguments

Argument

Description

Default value

pagename

The page to execute upon

current pagename

days

Number of days

show_minor

Show minor modifications

true

show_major

Show major modifications

true

limit

Number of versions to display

100

format

Format to display: 'rss'

false

Example

<<PageHistory>>

PageHistory for PhpWikiManual rssrss2atom

13 March 2024

15 November 2023

13 July 2023

Author

See Also

Included from Help/PageInfoPlugin

The PageInfo plugin returns extra information about a page.

This plugin just passes a page revision handle to the Template 'info.tmpl', which does all the real work.

Usage

<<PageInfo arguments>>

Arguments

Argument

Description

Default value

page

pagename

version

Example

<<PageInfo>>
Last Modified: 13 March 2024 20:31
Last Author: admin
Page Version: 3
Size: 140 words, 1.3 KiB (1317 bytes)
Hits: 246806
Last Summary:
ACL type: page permission inherited from default
ACL: view:_EVERY; edit:_EVERY; create:_EVERY; list:_EVERY; remove:_ADMIN,_OWNER; purge:_ADMIN,_OWNER; dump:_ADMIN; change:_ADMIN,_OWNER

Author

See Also

Included from Help/PageTrailPlugin

The PageTrail plugin displays the recently visited pages.

Usage

Typically add to some template at the top or at the bottom. See themes/blog.

<<PageTrail arguments>>
<<PageTrail numberlinks=5>>
<<PageTrail invisible=1>>

Arguments

Argument

Description

Default value

numberlinks

number of links to display

5

invisible

false

duplicates

false

Optional Configuration

define('PAGETRAIL_ARROW', " => ") in the sourcecode or add it to config.ini

Example

<<PageTrail>>
PhpWikiManual

Author

  • Carsten Klapp

See Also

Included from Help/PasswordResetPlugin

The PasswordReset plugin requires an ActionPage with the content <<PasswordReset>> to be able the reset user passwords.

Any Administrator may reset (i.e. delete) any users password. The user may login with an empty password then or set a new one at the sign in page.

A normal user may only reset a users password who has his email address defined. For users with undefined email address you have to ask an Administrator to reset any password.

Authenticated users should change their passwords at their UserPreferences page.

Usage

<<PasswordReset>>
<<PasswordReset user=username>>

Arguments

Argument

Description

Default value

user

Username to reset the password (optional)

empty

Included from Help/PhotoAlbumPlugin

The PhotoAlbum plugin makes an 'album' by displaying a set of photos listed in a text file with optional descriptions.

Usage

<<PhotoAlbum arguments>>

Arguments

Only the src parameter is required.

Argument

Description

Default value

src

URL or local path to a CSV textfile which separates filename and description of each photo. Photos listed in the text file have to be in same directory as the file. Descriptions are optional.

If the local path points to a directory, is relative from PHPWIKI_DIR, and the main script is in PHPWIKI_DIR, url must not be given, and all pictures from this directory are displayed.

url

Defines the webpath to the srcdir directory.

empty

mode

Specifies how the images are arranged.

  • "normal" - Normal table which shows photos full-size
  • "thumbs" - WinXP thumbnail style
  • "tiles" - WinXP tiles style
  • "list" - WinXP list style
  • "row" - inline thumbnails
  • "column" - photos full-size, displayed in 1 column
  • "slide" - slideshow mode, needs Javascript on client

normal

numcols

photos per row, columns

3

showdesc

  • "none" - No descriptions next to photos
  • "name" - Only filename shown
  • "desc" - Only description (from textfile) shown
  • "both" - If no description found, then filename will be used

both

link

Boolean. If true, each image will be hyperlinked to a page where the single photo will be shown full-size. Only works when mode is different from 'normal'

true

attrib

attrib arg allows multiple attributes: attrib=sort,nowrap,alt

  • "sort" sorts alphabetically,
  • "nowrap" for cells,
  • "alt" to use descs instead of filenames in image ALT-tags

align

center, right or left

center

bgcolor

Cell background color

#eae8e8 (lightgrey)

hlcolor

Highlight color

#c0c0ff (lightblue)

height, width

Height and width are calculated compared to original metrics retrieved by php-function:getimagesize and can be absolute (50px) or a percentage (e.g. "50%").

attrib

attrib arg allows multiple attributes: attrib=sort,nowrap,alt 'sort' sorts alphabetically, 'nowrap' for cells, 'alt' to use descs instead of filenames in image ALT-tags

cellwidth

cell (auto|equal|image|75|100%)

Width of cells in table. Either absolute value in pixels, HTML style percentage, "auto" (no special action), "equal" (where all columns are equally sized) or "image" (take height and width of the photo in that cell).

tablewidth

table (75|100%)

false

p

"displaythissinglephoto.jpg" only

false

h

"highlightcolorofthisphoto.jpg" only

false

duration

in slide mode, duration in seconds

6

thumbswidth

width of thumbnails

80

Examples

Text file

Possible content of a valid text file:

photo-01.jpg; My girlfriend and I
photo-02.jpg
christmas.gif; Merry Christmas!

Sample Albums

local dir:

<<PhotoAlbum
         src="themes/Hawaiian/images/pictures/"
         mode=slide
         duration=1
>>
BeachPalmDusk.jpg

BeachPalmDusk.jpg

or via external URL:

<<PhotoAlbum
src="http://phpwiki.demo.free.fr/themes/Hawaiian/images/pictures/PhotoAlbum.csv"
mode=tiles
>>
WhaleRainbow.jpg

205 x 256 pixels
SwimmingPoolWater.jpg

171 x 256 pixels
Waterfall.jpg

170 x 256 pixels
LavaTwilight.jpg

168 x 256 pixels
SubmersiblePiscesV.jpg

256 x 174 pixels
SteamVolcanoDusk.jpg

256 x 170 pixels
LoihiSeamount.jpg

256 x 169 pixels
HawaiiMauiFromSpace.jpg
Coastline.jpg

256 x 206 pixels
BeachPalmDusk.jpg

256 x 168 pixels

Authors

Included from Help/PhpHighlightPlugin

The PhpHighlight plugin pretty-prints PHP code using the php-function:highlight-string.

Usage

You specify options for the plugin on the same line as <<PhpHighlight, and put the code on the following lines, until the final >>:

<<PhpHighlight [wrap?] [color options]
code to be highlighted
>>

Description

Depending on the wrap option, then the plugin will take care of adding <?php and ?> to the code before passing it to php-function:highlight-string. If the PHP delimiters were added, then the plugin removes them again from the highlighted string, before presenting it.

Options

Automatic Wrapping

If you don't want the plugin to automatically wrap the source code in <?php and ?>, then set wrap to 0. The default value is 1, which means that the plugin takes care of adding and removing <?php and ?> automatically.

If you set wrap to 0, then you'll be able to mix PHP code with HTML. The plugin will then translate '< ?php' into '<?php' and '? >' into '?>' to allow you to start and stop PHP mode in your code.

Color Options

The plugin accepts optional color arguments which correspond to the highlight settings in php.ini. Specified colors must be a valid hexadecimal color or HTML 4 color name in lowercase, such as '#0f0344' or blue. You can set the following options: string, comment, keyword, bg, default, and html.

Note: bg no longer exists in PHP >= 5.4.

Examples

PHP with default colors from php.ini:

function hello() {
    echo 
"Hello World<p>";
}

HTML with embedded PHP

Here we have to use wrap=0 to prevent automatic wrapping, and escape '?>' as '? >':

<html>
  <head>
    <title>PHP Test</title>
  </head>
  <body>
    <?php echo "<p>Hello World</p>\n"?>
  </body>
</html>

C Source

Although highlight_string() was designed with PHP code in mind it is suitable for basic syntax-highlighting of most C code because the two syntax are similar.

#include <stdio.h>
/* Get load */
int
getload
(void)
{
    if ((
fp fopen("/proc/loadavg""r")) == NULL) {
        
syslog(LOG_ERR_("%s %s: unable to open %s: %s"), _("FATAL ERROR:"),
              
"getload()""/proc/loadavg"strerror(errno));
        exit(
EX_OSFILE);
    }
    
fclose(fp);
}

Known Problems

<<PhpHighlight
    testing[somearray];
    testing~[badworkaround~];
>>

will swallow "[somearray]"

Authors

See Also

Included from Help/PloticusPlugin

The Ploticus plugin passes all its arguments to the Ploticus binary and displays the result as PNG, GIF, EPS, SVG or SVGZ. Ploticus is a free, GPL, non-interactive software package for producing plots, charts, and graphics from data. See http://ploticus.sourceforge.net/doc/welcome.html

Ploticus uses a cache expire date of days.

Usage

<<Ploticus device||=png [ploticus options...]
     multiline ploticus script ...
>>

or without any script: (not tested)

<<Ploticus -prefab vbars
        data=myfile.dat delim=tab y=1
        clickmapurl="http://mywiki.url/wiki/?pagename=@2"
        clickmaplabel="@3" -csmap
>>

TODO: PloticusSql - create intermediate data from SQL. Similar to SqlResult plugin, just in graphic form. For example to produce nice looking pagehit statistics or ratings statistics. Ploticus has its own sql support within #getproc data, but this would expose security information.

Arguments

Argument

Description

Default value

device

gif, png, jpeg, svg, svgz, eps. Any -T parameter supported by Ploticus.

png

data

optionally add data by <!plugin-list !> pagelist plugins. See Help:WikiPlugin

alt

alt text for the image

-prefab

use the given prefab script (may need PLOTICUS_PREFABS)

-csmap

If a clickable map should be produced (not yet tested) passed to Ploticus as -csmap -mapfile $tempfile.map

help

Show a help screen

All other arguments are used as source to Ploticus.

Known Problems

For Windows you need either a gd library with GIF support or a Ploticus with PNG support. This comes only with the Cygwin build so far.

Optional Configuration

config.ini
PLOTICUS_EXE = pl.exe (on Windows) PLOTICUS_EXE = /usr/local/bin/pl (elsewhere)

prefabs need the environment variable PLOTICUS_PREFABS. Default: /usr/share/ploticus. Maybe also set by the config variable PLOTICUS_PREFABS.

See also Help:WikiPluginCached options in config.ini.

Examples

Sample Pie Chart:

<<Ploticus device||=png alt="Sample Pie Chart"
#proc page
#if @DEVICE in gif,png
  scale: 0.7
#endif

//  specify data using {proc getdata}
#proc getdata
data:   Brazil 22
        Columbia 17
        "Costa Rica" 22
        Guatemala 3
        Honduras 12
        Mexico 14
        Nicaragua 28
        Belize 9
         United\nStates 21
        Canada 8

//  render the pie graph using {proc pie}
#proc pie
firstslice: 90
explode: .2 0 0 0 0  .2 0
datafield: 2
labelfield: 1
labelmode: line+label
center: 4 4
radius: 2
colors: yellow pink pink pink pink yellow pink
labelfarout: 1.05
>>

Author

See Also

Included from Help/PluginManagerPlugin

The PluginManager plugin provides a dynamic list of plugins on this wiki.

Usage

<<PluginManager info=args>>

Arguments

Argument

Description

Default value

info

Display the arguments also. To disable use info=0.

enabled

Configuration

define('REQUIRE_ADMIN', true) in the sourcecode to disable general usage.

Example

<<PluginManager>>

PhpWiki lets you extend it with new functionality via a plugin mechanism. In short, you extend a PHP class we provide and customize it to print out the content you want. For more information see Help:WikiPlugin, Help:HelloWorldPlugin, and view the source of the files in lib/plugin.

If there is no example page for the plugin, or you need more information, the best place to go is the source of the plugin. Under your wiki's root directory, the folder lib/plugin contains all the PHP files for the plugins.

External Requirements

Some plugins require correctly configured PLUGIN_CACHED and external libraries not provided with PhpWiki or PHP, such as

Author

Included from Help/PopUpPlugin

Display a page in a clickable popup link.

Usage

<<PopUp arguments>>

Arguments

Argument

Description

Default value

link

HomePage

title

text

width

500

height

400

resizable

no

scrollbars

no

toolbar

no

location

no

directories

no

status

no

menubar

no

copyhistory

no

close

no

Example

<<PopUp
  link="HomePage"
  text="Click here to popup the HomePage"
>>
Click here to popup the HomePage

Author

See Also

Included from Help/PopularNearbyPlugin

The PopularNearby plugin will list the most popular pages nearby.

Usage

<<PopularNearby arguments>>

Arguments

Argument

Description

Default value

pagename

Pagename to look for

empty

mode

Nearby or incoming or outgoing

nearby

limit

Maximum number of pages

5

noheader

Boolean. If true, header should be omitted.

false

Example

<<PopularNearby pagename=HomePage limit=3>>
3 most popular nearby: Help/PopUpPlugin (35), Help/RandomPagePlugin (33), Help/EditMetaDataPlugin (28)

Author

See Also

Included from Help/PopularTagsPlugin

The PopularTags plugin lists the most popular tags.

Usage

<<PopularTags arguments>>

Arguments

Argument

Description

Default value

limit

Maximum number of tags to display

10

mincount

Minimum popularity of the tag (number of backlinks)

5

Example

<<PopularTags>>

Author

See Also

Included from Help/PreferenceAppPlugin

The PreferenceApp plugin is used to analyze a category of items that a group of people have rated. A user is grouped to be analyzed in the group by

  1. having rated at least one item in the database and
  2. matching the optional criteria for declaring a budget on their homepage.

An example of a budget declaration would be "TotalSoda: 50" on my homepage.

PreferenceApp will output a matrix style table shows "how much" fractionally a group of people prefer an item over other items. For example, if my soda budget is 100 then PreferenceApp might assign 20 units of my budget to Moutain Dew.

Usage

<<PreferenceApp arguments>>

Arguments

Argument

Description

Default value

category

null

lockedBudget

null

pageTextLabel

null

group

null

roundCalc

true

neutralRating

3

declareBudget

true

Example

<<PreferenceApp category="Soda" pageTextLabel="TotalSoda" roundCalc="true" >>

Author

  • mcassano circa April 2004

See Also

Included from Help/PrevNextPlugin

The PrevLink plugin allows to display Previous and Next buttons on a wiki page for easy navigation.

Usage

<<PrevNext prev=PrevLink next=NextLink>>

Arguments

Argument

Description

Default value

prev

Link to the Previous page

empty

next

Link to the Next page

empty

up

Link to the Up page

empty

contents

Link to the Contents page

empty

index

Link to the Index page

empty

first

Link to the First page

empty

last

Link to the Last page

empty

order

Reorder the buttons: comma-delimited

empty

align

Can be left, right or center

left

style

Can be button or text

button

class

Can be wikiaction or another class

wikiaction

Examples

<<PrevNext prev="Help/CreateTocPlugin" next="Help/MediawikiTablePlugin">>
PreviousNext
<<PrevNext prev="Help/CreateTocPlugin"
                  next="Help/MediawikiTablePlugin"
                  contents="Help"
>>
PreviousNextContents
<<PrevNext prev="Help/CreateTocPlugin"
                  next="Help/MediawikiTablePlugin"
                  contents="Help"
                  align="right"
>>
PreviousNextContents
<<PrevNext prev="Help/CreateTocPlugin"
                  next="Help/MediawikiTablePlugin"
                  contents="Help"
                  align="center"
>>
Previous Next Contents
<<PrevNext prev="Help/CreateTocPlugin"
                  next="Help/MediawikiTablePlugin"
                  up="Help"
                  style="text"
>>
[ Previous | Next | Up ]
<<PrevNext prev="Help/CreateTocPlugin"
                  next="Help/MediawikiTablePlugin"
                  index="Help"
>>
PreviousNextIndex
<<PrevNext first="Help/AddCommentPlugin"
                  prev="Help/CreateTocPlugin"
                  next="Help/MediawikiTablePlugin"
                  last="Help/YouTubePlugin"
>>
FirstPreviousNextLast
<<PrevNext first="Help/AddCommentPlugin"
                  prev="Help/CreateTocPlugin"
                  next="Help/MediawikiTablePlugin"
                  last="Help/YouTubePlugin"
                  order="first,last,prev,next"
>>
FirstLastPreviousNext

Author

See Also

Included from Help/ProcessingPlugin

The Processing plugin is an interface to http://ejohn.org/blog/processingjs/

Syntax: http://ejohn.org/blog/overview-of-processing/

Usage

<<Processing arguments
processing code
>>

Arguments

Argument

Description

Default value

width

200

height

200

script

One line script. Not very likely.

false

onmousemove

false

Example

TBD

Author

See Also

Included from Help/RandomPagePlugin

The RandomPage plugin displays a list of randomly chosen pages or redirects to a random page.

Usage

<<RandomPage arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

numpages

Number of pages to list. The number of random pages should be between 1 and 20. If greater, 20 will be used.

20

redirect

Boolean. If true, do not display random page link, redirect to random page.

false

hidename

Boolean. If true, hide name (only for numpages=1)

false

exclude

Pages to exclude from random

RandomPage,HomePage

Example

<<RandomPage numpages=10>>
Plugin RandomPage disabled. Plugin not run: not in browse mode
<?plugin RandomPage numpages=10?>

Author

See Also

Included from Help/RateItPlugin

RateIt: A recommender system, based on MovieLens and "suggest".

Store user ratings per pagename. The wikilens theme displays a navbar image bar with some nice Javascript magic and this plugin shows various recommendations.

There should be two methods to store ratings:

The most important fact: A page has more than one rating. There can be (and will be!) many ratings per page (ratee): different raters (users), in different dimensions. Are those stored per page (ratee)? Then what if I wish to access the ratings per rater (user)?

Wikilens plans several user-centered applications like:

  • a) show my ratings
  • b) show my buddies' ratings
  • c) show how my ratings are like my buddies'
  • d) show where I agree/disagree with my buddy
  • e) show what this group of people agree/disagree on

If the ratings are stored in a real DB in a table, we can index the ratings by rater and ratee, and be confident in performance. Currently MovieLens has 80,000 users, 7,000 items, 10,000,000 ratings. This is an average of 1400 ratings/page if each page were rated equally. However, they're not: the most popular things have tens of thousands of ratings (e.g., "Pulp Fiction" has 42,000 ratings). If ratings are stored per page, you would have to save/read huge page metadata every time someone submits a rating. Finally, the movie domain has an unusually small number of items-- I'd expect a lot more in music, for example.

For a simple rating system one can also store the rating in the page metadata (default).

Recommender Engines:

Usage

Note: The wikilens theme or any derivate must be enabled, to enable this plugin!

        <<RateIt>> just the widget without text
        <<RateIt show=top>> text plus widget below
        <<RateIt show=ratings>> to show my ratings
TODO:   <<RateIt show=buddies>> to show my buddies
        <<RateIt show=ratings dimension=1>>
TODO:   <<RateIt show=text>> just text, no widget, for dumps

Arguments

Argument

Description

Default value

pagename

The page to execute upon

current pagename

version

false

version

false

id

rateit

imgPrefix

(empty) or BStar or Star

(empty)

dimension

false

small

false

show

false

mode

false

Example

<<RateIt>>

Author

  • Dan Frankowski (wikilens author),
  • Reini Urban (as plugin)

See Also

Included from Help/RawHtmlPlugin

With this plugin you can embed raw unfiltered HTML in the page source; say, for example, you want to put in a complicated set of nested tables to display data. By default, raw HTML is not allowed in most Wikis due to security problems (because malicious users can insert redirects, Javascript, etc.)

For this plugin to work, the page must be locked by the administrator. If you are seeing the raw HTML being displayed below, instead of rendered, try locking the page (log in as the administrator first).

Sample HTML from www.gnu.org

Included from Help/RecentChangesPlugin

The RecentChanges plugin lists the most recent modifications in the wiki.

Usage

<<RecentChanges arguments>>

Arguments

Argument

Description

Default value

pagename

The page to execute upon

current pagename

days

Number of days. Specifying 0 will display modifications since wiki creation.

2

show_minor

Show minor modifications

false

show_major

Show major modifications

true

show_all

Display a page multiple times if it was modified more that once.

false

show_deleted

Show deleted pages

sometimes

only_new

Show only new pages

false

author

Show only modifications from a specific author

false

owner

Show only pages from a specific owner

false

limit

Do not show more pages that the limit.

false

format

Default is HTML. Other: rss, rss2, rss091, atom, sidebar, box, contribs

false

daylist

Comma-separated list of days

false

difflinks

Show diff links

true

historylinks

Show history links

false (true for Monobook and FusionForge)

caption

Custom caption

category

Limit pages to a given category

pagematch

Limit to pages matching pattern

Example

<<RecentChanges limit=10>>

RecentChanges rssrss2atom

The 10 most recent major edits during the past 2 days are listed below.

No changes found

<<RecentChanges show_minor=1>>
<<RecentChanges days=30>>

Author

See Also

Included from Help/RecentCommentsPlugin

The RecentComments plugin lists basepages with recently added comments.

Usage

<<RecentComments arguments>>

Arguments

Argument

Description

Default value

pagename

The page to execute upon

current pagename

days

Number of days. Specifying 0 will display modifications since wiki creation.

2

show_major

Show major modifications

true

show_deleted

Show deleted pages

sometimes

only_new

Show only new pages

false

author

Show only modifications from a specific author

false

owner

Show only pages from a specific owner

false

limit

Do not show more pages that the limit.

false

format

Default is HTML. Other: rss, rss2, rss091, atom, sidebar, box, contribs

false

daylist

Comma-separated list of days

false

difflinks

Show diff links

true

historylinks

Show history links

false (true for Monobook and FusionForge)

category

Limit pages to a given category

pagematch

Limit to pages matching pattern

Example

<<RecentComments>>

rssrss2atom

The most recent comments during the past 2 days are listed below.

No comments found

Author

See Also

Included from Help/RecentEditsPlugin

The RecentEdits plugin lists all recent edits in this wiki.

Usage

<<RecentEdits arguments>>

Arguments

Argument

Description

Default value

pagename

The page to execute upon

current pagename

days

Number of days. Specifying 0 will display modifications since wiki creation.

2

show_major

Show major modifications

true

show_deleted

Show deleted pages

sometimes

only_new

Show only new pages

false

author

Show only modifications from a specific author

false

owner

Show only pages from a specific owner

false

limit

Do not show more pages that the limit.

false

format

Default is HTML. Other: rss, rss2, rss091, atom, sidebar, box, contribs

false

daylist

Comma-separated list of days

false

difflinks

Show diff links

true

historylinks

Show history links

false (true for Monobook and FusionForge)

caption

Custom caption

category

Limit pages to a given category

pagematch

Limit to pages matching pattern

Example

<<RecentEdits limit=10>>

RecentEdits rssrss2atom

The 10 most recent edits during the past 2 days are listed below.

No changes found

Author

See Also

Included from Help/RecentReferrersPlugin

The RecentReferrers plugin allows to analyse access log.

Usage

<<RecentReferrers arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

limit

15

Example

<<RecentReferrers>>
Error: no ACCESS_LOG

Author

See Also

Included from HomePage

PhpWiki 1.6.4 has been published!
You can download it at https://sourceforge.net/projects/phpwiki/.


Included from Help/RelatedChangesPlugin

The RelatedChanges plugin gives a list of changes on all pages which are linked to from this page.

Usage

<<RelatedChanges arguments>>

Arguments

The arguments are the same as for RecentChanges plugin.

Example

<<RelatedChanges>>

RecentEdits rssrss2atom

The most recent edits during the past 2 days are listed below. (to pages linked from “PhpWikiManual”)

No changes found

Author

Included from Help/RichTablePlugin

The RichTable plugin is a plugin that takes off from the OldStyleTable plugin. It allows a user to specify arbitrary properties of <table>, <tr> and <td> with a very simple markup.

This plugin is included for legacy only. We recommend to use Mediawiki tables instead.

Syntax

The contents of each cell are individually processed by the BlockParser. This means that you can do interesting things like put invoke plugins, use enumerated lists etc within each cell!

A "-" (dash) at the start of a new line represents a new row in the table.

A "|" (vertical bar or pipe) at the start of a new line represents a cell.

Attributes for the tags

A line that starts with a "*" (star or asterisk) after a "|" is parsed for attributes for the corresponding cell.

Attributes for the table are given on line that starts with a "*", only if the line appears before any other line except whitespace.

A line that starts with a - is always parsed for attributes since it can't have any content, unlike a cell.

Cell contents

Cell contents are processed by the BlockParser.

Any line that starts with a "*" anywhere other than the table attribute line is treated as normal content.

Any line that starts with whitespace is also treated as content.

Any cell line that does not have a "*" after the "|" is treated as normal content.

All content lines that follow a cell line are added to that cell. They can contain arbitrary text except the above cases.

If there is no cell in the current row, content lines are dropped silently.

Special characters

The two special characters "~" and "?>" should be escaped as "\~" and "?\>". I haven't discovered any other characters yet that might need to be escaped. This is required for the block parser to work.

Attributes

We allow attributes with or without quotes ("):

border=1, cellpadding="5"
style="font-family: sans-serif; border-top:1px solid #dddddd;"
style="font-family: Verdana, Arial, Helvetica, sans-serif"

Example

HomePage

This cell actually has a plugin invocation inside it!

2 pages link to PhpWikiManual:

  1. One
  2. Two
  • Foo
  • Bar

One paragraph

Another paragraph?

This cell uses the row color

I wish this cell had a nested table inside it! :(

The above table is rendered from:

<<RichTable

*border=1, cellpadding=5, bgcolor=#f0f8f8, width=75%, align=center
-
|* colspan=3, align=center
HomePage
-
|* colspan=2
[http://phpwiki.demo.free.fr/themes/default/images/png.png]
|* rowspan=2
This cell actually has a plugin invocation inside it!
<?plugin
BackLinks
?\>
- bgcolor=white
|
# One
# Two
|
* Foo
* Bar
- bgcolor=cyan
This line gets dropped ... no cell to contain it!
|* bgcolor=#f0f0ff, align=center
One paragraph.

Another paragraph?
|* align=left
This cell uses the row color
| I wish this cell had a nested table inside it! :(
>>

Known Problems

  • The plugin can't nest itself. Thus nested tables are currently not possible. See Mediawiki tables to have nested tables.

See Also

Author

Included from Help/RssFeedPlugin

The RssFeed plugin allows to display external RSS feeds.

Usage

<<RssFeed url=http://somesite.tld/linktofeed.rss>>

Arguments

Argument

Description

Default value

url

RSS Feed URL

empty

feed

RSS Feed Name

empty

description

Description of the RSS Feed

empty

maxitem

Max. number of entries (0 = unlimited)

0

titleonly

Boolean. If true, do not display item body.

false

Example

PhpWikiRss feed for PhpWiki:RecentChanges

<<RssFeed feed=PhpWikiRss description="PhpWiki RecentChanges"
          url=http://phpwiki.demo.free.fr/index.php/RecentChanges?format=rss>>

Included from Help/SearchHighlightPlugin

The SearchHighLight plugin is an action page plugin, which is only used internally.

When someone is referred from a search engine like Google, Yahoo or our own FullTextSearch, the terms the user searched for are highlighted.

Arguments

Argument

Description

Default value

s

The search term

empty

noheader

Boolean. If true, header should be omitted.

false

hits

Boolean. If true, print the list of lines with lines terms additionally.

false

case_exact

Boolean. If true, highlight only case exact searches. Not yet supported.

false

regex

Not yet supported.

empty

Included from Help/SemanticRelationsPlugin

Display the list of relations and attributes on this page.

Usage

<<SemanticRelations>>

Arguments

Argument

Description

Default value

page

Which pages (glob allowed)

Current page

relations

Which relations

All

attributes

Which attributes

All

units

Not yet implemented.

noheader

Boolean. If true, header should be omitted.

false

nohelp

Boolean. If true, do not display help.

false

Example

<<SemanticRelations>>

Help/SemanticRelations - Find out how to add relations and attributes to pages.

Author

See Also

Included from Help/SemanticSearchAdvancedPlugin

Parse and execute a full query expression.

Usage

<<SemanticSearchAdvanced arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

s

query expression

*

page

which pages (glob allowed)

* (all)

case_exact

Boolean. If true, search with case exact.

false

regex

Type of regular expression used for searching

auto

noform

Boolean. If true, don't show form with results.

false

noheader

Boolean. If true, header should be omitted.

false

Example

<<SemanticSearchAdvanced>>
Search in all specified pages for the expression.
Page Name:

Author

See Also

Included from Help/SemanticSearchPlugin

Search for relations/attributes and its values.

page - relation::object. e.g list all cities: is_a::city => relation=is_a&s=city

We search for both a relation and if the search is valid for attributes also, and OR combine the result.

An attribute has just a value, which is a number, and which is for sure no pagename, and its value goes through some units unification. (not yet)

We can also do numerical comparison and unit lifting with attributes:

  • population > 1000000
  • population > 1 million

Limitation:

  • The backends can already do simple AND/OR combination of multiple relations and attributes to search for. Just the UI not. TODO: implement the AND/OR buttons. population < 1 million AND area > 50 km2
  • Due to attribute internals a relation search with matching attribute names will also find those attribute names, but not the values. You must explicitly search for attributes then.

The Advanced query can do a freeform query expression with multiple comparison and nesting.

Usage

<<SemanticSearch arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

s

linkvalue query string

*

page

which pages (glob allowed)

* (all)

relation

linkname. which relations.

all

attribute

linkname. which attributes.

all

attr_op

a funny written way for equality for pure aesthetic pleasure "All attributes which have this value set"

:=

units

case_exact

Boolean. If true, search with case exact.

true

regex

no word splitting, if no regex op is present, defaults to exact match

auto

noform

Boolean. If true, don't show form with results.

false

noheader

Boolean. If true, header should be omitted.

false

info

valid: pagename, relation, linkto, attribute, value and all other pagelist columns

false

Example

<<SemanticSearch>>
Search in pages for a relation with that value (a pagename).
Pagefilter Relation Links
: ::   
Search in pages for an attribute with that numeric value.
Pagefilter Attribute Op Value
:   

Author

See Also

Included from Help/SiteMapPlugin

This is a quick mod of BackLinks plugin to do the job recursively. If your site is categorized correctly, and all the categories are listed in CategoryCategory, then a recursive BackLinks there will produce a contents page for the entire site.

The list is as deep as the recursion level (reclimit).

Usage

<<SiteMap direction=back|forward reclimit=4>>

Arguments

Argument

Description

Default value

direction

Get BackLinks or forward links (links listed on the page)

back

firstreversed

Boolean. If true, get BackLinks for the first page and forward links for the rest. Only applicable when direction = 'forward'.

false

excludeunknown

Boolean. If true, then exclude any mentioned pages which don't exist yet. Only applicable when direction = 'forward'.

true

exclude

List of pagenames to exclude, separated by comma

empty

include_self

Boolean. If true, include yourself in the results.

false

noheader

Boolean. If true, header should be omitted.

false

page

Page to get SiteMap from

The current page

description

Override default description. Printed as header.

Default description

reclimit

Maximum recusion level

4

info

Info to display in the table

false

Example

<<SiteMap page=PhpWikiDocumentation>>

Recursively get BackLinks or links. (max. recursion level: 4):

Author

  • Cuthbert Cat (cuthbertcat)

See Also

Included from Help/SpellCheckPlugin

Check the spelling of a page and make suggestions.

Usage

<<SpellCheck arguments>>

Arguments

Argument

Description

Default value

pagename

Example

Plugin SpellCheck failed. Couldn't start commandline “aspell -a -C --data-dir=/usr/share/aspell --lang=en ”

Author

See Also

Included from Help/SqlResultPlugin

The SqlResult plugin displays results of arbitrary SQL select statements in table form.

The database definition, the DSN, must be defined in the local file config/SqlResult.ini

A simple textfile with alias = dsn lines.

Optional template file to format the result and handle some logic.

Template vars: %%where%%, %%sortby%%, %%limit%%

Usage

<<SqlResult parameters
SELECT statement
>>

Arguments

Argument

Description

Default value

alias

DSN database specification

false

ordered

if to display as <ol> list: single col only without template

false

template

use a custom <theme>/template.tmpl

false

where

custom filter for the query

false

sortby

for paging

false (no paging)

limit

for paging

0,50 (only the first 50)

Examples

<<SqlResult alias=mysql
         SELECT 'mysql password for string "xx":',
                PASSWORD('xx')
>>

<<SqlResult alias=videos template=videos
         SELECT rating,title,date
                FROM video
                ORDER BY rating DESC
                LIMIT 5
>>

<<SqlResult alias=imdb template=imdbmovies where||="Davies, Jeremy%"
SELECT m.title, m.date, n.name, c.role
  FROM movies as m, names as n, jobs as j, characters as c
  WHERE n.name LIKE "%%where%%"
  AND m.title_id = c.title_id
  AND n.name_id = c.name_id
  AND c.job_id = j.job_id
  AND j.description = 'Actor'
  ORDER BY m.date DESC
>>

Author

See Also

Included from Help/SyncWikiPlugin

The SyncWiki plugin allows to synchronize pages with external PhpWiki.

Usage

<<SyncWiki arguments>>

Arguments

Argument

Description

Default value

url

noimport

0

noexport

0

noupload

0

label

passwd

false

sid

false

Example

<<SyncWiki>>
Plugin SyncWiki failed. A required argument “url” is missing.

Author

See Also

Included from Help/SyntaxHighlighterPlugin

The SyntaxHighlighter plugin will highlight source code in a variety of languages.

Highlighting is done in Javascript with http://highlightjs.org/.

Recognized languages are the following:

Apache Bash C# C++
CSS CoffeeScript Diff HTML, XML
HTTP Ini JSON Java
JavaScript Makefile Markdown Nginx
Objective C PHP Perl Python
Ruby SQL

Arguments

None.

The source code is put between <<SyntaxHighlighter and >>.

Example

<<SyntaxHighlighter
 #include <stdio.h>

 int main() {
     printf("Lalala\n");
 }
>>

will give:


#include <stdio.h>

 int main() {
     printf("Lalala\n");
 }

History

The first implementation of this plugin passed all its arguments through a C++ highlighter called "highlight" (available at http://www.andre-simon.de).

This implementation allowed the following arguments, which are now ignored.

Former Arguments

Argument

Description

Default value

syntax

none (required argument), see http://www.andre-simon.de/doku/highlight/highlight.html

style

[ "ansi", "gnu", "kr", "java", "linux" ] (required)

color

null (optional), see highlight/themes

number

0 (optional)

wrap

0 (optional)

Authors

Included from Help/SystemInfoPlugin

The SystemInfo plugin provides access to lower level system information for the platform PhpWiki is installed on.

Usage

         <<SystemInfo all>>
      or <<SystemInfo pagestats cachestats discspace hitstats>>
      or <<SystemInfo version>>
      or <<SystemInfo current_theme>>
      or <<SystemInfo PHPWIKI_DIR>>

Example

Application name PhpWiki
PhpWiki engine version 1.6.4
Database DATABASE_TYPE: PDO, DATABASE BACKEND: PDO mysqli, DATABASE_PREFIX: "", DATABASE_TIMEOUT: 20
Cache statistics cached pagedata: 286, cached versiondata: 281
Page statistics 280 pages, 280 not-empty pages
User statistics 1 homepages
Hit statistics total hits: 313589, max: 246806, mean: 1119.961, median: 36, stddev: 33.526; 279 pages with less than 24680 hits (<10%). 1 page(s) with more than 222125 hits (>90%).
Harddisc usage Application size: 0 KiB
Wikiname regexp (?<![[:alnum:]])(?:[[:upper:]][[:lower:][:digit:]]+){2,}(?![[:alnum:]])
Allowed protocols http https mailto ftp news nntp ssh gopher
Inline images png jpg jpeg gif
Available plugins Total 135 plugins: AddComment, AllPages, AllUsers, AnalyseAccessLogSql, AppendText, AsciiMath, AsciiSVG, AtomFeed, AuthorHistory, BackLinks, BlogArchives, BlogJournal, BoxRight, CacheTest, Calendar, CalendarList, Chart, Comment, CreateBib, CreatePage, CreateToc, CurrentTime, DeadEndPages, DebugAuthInfo, DebugBackendInfo, DebugGroupInfo, DebugRetransform, Diff, DynamicIncludePage, EditMetaData, ExternalSearch, FacebookLike, FileInfo, FoafViewer, FullTextSearch, FuzzyPages, GoogleMaps, GooglePlugin, GoTo, GraphViz, HelloWorld, HtmlConverter, IncludePage, IncludePages, IncludeSiteMap, IncludeTree, InterWikiSearch, JabberPresence, LdapSearch, LikePages, LinkDatabase, LinkSearch, ListPages, ListRelations, ListSubpages, MediawikiTable, ModeratedPage, MostPopular, NewPagesPerUser, NoCache, OldStyleTable, OrphanedPages, PageDump, PageGroup, PageHistory, PageInfo, PageTrail, PasswordReset, PhotoAlbum, PhpHighlight, Ploticus, PluginManager, PopularNearby, PopularTags, PopUp, PreferenceApp, PrevNext, Processing, RandomPage, RateIt, RawHtml, RecentChanges, RecentComments, RecentEdits, RecentReferrers, RedirectTo, RelatedChanges, RichTable, RssFeed, SearchHighlight, SemanticRelations, SemanticSearch, SemanticSearchAdvanced, SiteMap, SpellCheck, SqlResult, SyncWiki, SyntaxHighlighter, SystemInfo, Template, TeX2png, text2png, TexToPng, TitleSearch, Transclude, TranslateText, UnfoldSubpages, UpLoad, UriResolver, UserPreferences, UserRatings, Video, VisualWiki, WantedPages, WatchPage, WhoIsOnline, WikiAdminChown, WikiAdminDeleteAcl, WikiAdminPurge, WikiAdminRemove, WikiAdminRename, WikiAdminSearchReplace, WikiAdminSelect, WikiAdminSetAcl, WikiAdminSetAclSimple, WikiAdminSetExternal, WikiAdminUtils, WikiBlog, WikicreoleTable, WikiForm, WikiFormRich, WikiForum, WikiPoll, WikiTranslation, YouTube
Supported languages Total of 9 languages: de, en, es, fr, it, ja, nl, sv, zh. Current language: en
Supported themes Total of 13 themes: blog, Crao, default, Hawaiian, MacOSX, MonoBook, Portland, shamino_com, Sidebar, smaller, SpaceWiki, wikilens, Wordpress. Current theme: Sidebar

Included from Help/TeX2pngPlugin

The TeX2png plugin allows to display mathematical formulae in a Wiki page.

Usage

<<TeX2png text="$$(a+b)^n=\sum_{k=0}^n{n\choose k}a^k b^{n-k}$$">>

gives

Cannot run TeX2png plugin, “/usr/bin/latex” does not exist

Arguments

There is only one argument which is the text of the mathematical expression. This text must be enclosed by a dollar $ within a paragraph or two dollars $$ on a separate line. In the last case, all is centered.

To write mathematical formulae, the syntax is the one of LaTeX.

Caveats

This plugin is only to produce readable mathematical formulae. Any other text is not allowed: so if an expression is not enclosed by dollars then it will be displayed by a red text. It is all the same possible to display raw text as Cannot run TeX2png plugin, “/usr/bin/latex” does not exist by using:

<<TeX2png text="$\textrm{\LaTeX}$">>

This plugin is not able to produce sophisticated mathematicals texts with links, cross references... For that, you can use for example LaTeX2html.

Examples

Some Greeks letters: Cannot run TeX2png plugin, “/usr/bin/latex” does not exist, Cannot run TeX2png plugin, “/usr/bin/latex” does not exist, ... and a formula Cannot run TeX2png plugin, “/usr/bin/latex” does not exist to test display in a paragraph.

Exercise 1

Consider the function:

Cannot run TeX2png plugin, “/usr/bin/latex” does not exist
  1. Give the largest real domain for which f(x) is well defined.
  2. Give a domain on which the function is one-to-one. Using this domain derive a formula for the inverse function Cannot run TeX2png plugin, “/usr/bin/latex” does not exist.
  3. Calculate the derivative f'(x).

Exercise 2

Consider the function:

Cannot run TeX2png plugin, “/usr/bin/latex” does not exist
  1. Show that for all r > 0: Cannot run TeX2png plugin, “/usr/bin/latex” does not exist Help: you can use polar coordinates.
  2. Hence find the limit of Cannot run TeX2png plugin, “/usr/bin/latex” does not exist as x tends to Cannot run TeX2png plugin, “/usr/bin/latex” does not exist.

See Also

Included from Help/TemplatePlugin

The Template plugin allows to include text from a wiki page and replace certain placeholders by parameters.

A template can be seen as a parametrized block. It is similiar to CreatePage with the template argument, but at run-time.

There are two syntaxes to call a template, the usual Phpwiki syntax for plugins, and a more concise syntax similar to Mediawiki templates.

Usage

Without parameters

Plugin syntax:

<<Template page=Footer>>

Short syntax:

{{Footer}}

With parameters

Plugin syntax:

<<Template page=Film vars="title=SomeFilm&year=1999">>

Short syntax:

{{Film|title=SomeFilm|year=1999}}

With a specific revision of the page

Plugin syntax:

<<Template page=somepage rev=5>>

Short syntax:

{{somepage?version=5}}

Arguments

Argument

Description

Default value

page

The page to include as template.

none (required argument)

vars

Optional parameters to be expanded inside the template.

empty

rev

Page revision.

most recent revision

section

Just include a named section.

empty

sectionhead

Boolean. If true, when including a named section show the heading.

false

Page to include

If "Template:$page" exists, it is used.

Else, if "Template/$page" exists, it is used.

Else "$page" is used.

This allows compatibility with Mediawiki that puts templates in the "Template:" namespace.

Parameter expansion

We only support named parameters, not numbered ones as in Mediawiki, and the placeholder is %%var%% and not {{{var}}} as in Mediawiki.

vars="var1=value1&var2=value2"

The following predefined variables are automatically expanded if existing:

Variable

Description

pagename

mtime

last modified date + time

ctime

creation date + time

author

last author

owner

creator

first author

SERVER_URL

DATA_PATH

SCRIPT_NAME

PHPWIKI_BASE_URL

BASE_URL

Inclusion

is stripped.

.. is only expanded in pages using the template, not in the template itself.

Included from Help/TexToPngPlugin

Converts TeX to an image. May be used to embed formulas in PhpWiki.

Usage

<<TexToPng arguments>>

Arguments

Argument

Description

Default value

tex

TeX Commands (default: text mode), use $...$ for inline math formula style and $$...$$ for large formula style

magstep

magnify image by (1.2 to the magstep)

img

Image type (png, jpeg or gif), if chosen image type is not available use the first possible from png, gif, jpeg (in that order)

png

subslash

on or off: substitute slashes by backslashes (to avoid the backslash bug of the database pear interface)

off

antialias

on or off: render ps to img with antialias option. This produces higher quality output but is slower and needs more disk space.

transparent

on or off: produce transparent background instead of white background. Seems to be buggy (in pstoimg - not my fault)

center

on or off

off

Examples

This produces a little help screen:

<<TexToPng>>

A simple formula:

<<TexToPng tex="$x^2$" >>
$x^2$

A more complex formula:

<<TexToPng tex="$$/int^/infty_{-/infty} dx {1 /over /sqrt {x^2+1}}$$" subslash="on" >>
$$/int^/infty_{-/infty} dx {1 /over /sqrt {x^2+1}}$$

Author

  • Johannes Große

See Also

Included from Help/TitleSearchPlugin

The TitleSearch plugin displays results of pagename search.

If only one page is found and auto_redirect is true, this page is displayed immediately, otherwise the found page list is displayed.

Usage

<?plugin-form TitleSearch arguments ?>

Arguments

All PageList arguments (except paganame), plus the following ones:

Argument

Description

Default value

s

String to search

none (mandatory argument)

auto_redirect

Boolean. If true and only one page is found, this page is displayed immediately

false

noheader

Boolean. If true, header should be omitted.

false

exclude

Comma-separated list of pages to exclude

false

info

Info to display in the table

false

case_exact

Boolean. If true, search with case exact.

false

regex

Type of regular expression used for searching

auto

format

false

Example

<?plugin-form TitleSearch ?>

Author

See Also

Included from Help/TranscludePlugin

The Transclude plugin can be used to embed include whole (external) web pages within a wiki page.

Pages are transcluded using <iframe> tags.

Arguments

Argument

Description

Default value

src

The URL of the page to transclude

none (mandatory argument)

title

The title of the page to transclude

Transcluded page

height

The (initial) height of the transclusion frame. If, possible, after the transcluded page is loaded, the frame is resized via Javascript so that it fits the entire transcluded page. (See below for more.)

450

quiet

Boolean. If true, frame appears as normal content.

false

Bugs / Caveats

  • When possible, Javascript code is used to adjust the height of the iframe so that it fits the entire transcluded page. Unfortunately, this seems possible only when the transcluded page comes from the same server as the wiki page. (This restriction is due to security checks built in to the Javascript language.)
  • The recursion detection code does not currently work. Be careful to avoid recursive transclusions, or you'll be sorry (or at least amused.)

Example

<<Transclude src="https://en.wikipedia.org/wiki/PhpWiki">>

will get you

Transcluded from https://en.wikipedia.org/wiki/PhpWiki

Included from Help/TranslateTextPlugin

The TranslateText plugin allows to define a translation for a specified text.

Usage

<<TranslateText arguments>>

Arguments

Argument

Description

Default value

lang

false

pagename

translate

Example

<<TranslateText>>
Plugin TranslateText failed. This internal action page cannot be viewed. You can only use it via the WikiTranslation plugin.

Author

See Also

Included from Help/UnfoldSubpagesPlugin

The UnfoldSubpages plugin is used to display all or some subpages of the current or a given page. This gives an overview for a Help:WikiBlogPlugin, Help:CalendarPlugin or similar subpages.

Warning: Don't use it with subpages with nonexistent sections! The section extractor is currently quite unstable.

Usage

<<UnfoldSubpages>>
<<UnfoldSubpages sortby=-mtime words=50 maxpages=5>>
<<UnfoldSubpages quiet=1 smalltitle=1>>
<<UnfoldSubpages sections=2 words=100>>
<<UnfoldSubpages lines=3>>
<<UnfoldSubpages pagename="PhpWikiAdministration"
                 section="Plugin Arguments" sectionhead=1>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

pagename

Any pagename or if empty the current page.

empty

quiet

Boolean. If true, header should be omitted.

false

sortby

Sort by + (ASC) or - (DESC) and one column.
Multiple columns like sortby="-hits,-mtime" not yet supported.
Supported columns: [+|-]pagename, [+|-]mtime, [+|-]hits.

pagename

maxpages

Maximum number of pages to include or all if not defined.

false

sections

Maximum number of sections per page to include or all if not defined.

false

section

Include this named section per page only if defined.

empty

sectionhead

When including a named section show the heading.

false

smalltitle

If set, hide transclusion-title, just have a small link at the start of the page.

false

words

Maximum number of words per page to include.

false

lines

Maximum number of lines per page to include.

false

bytes

Maximum number of bytes per page to include.

false

Deprecated Arguments

Argument

Description

pages

Deprecated. Renamed to maxpages.

sort

'asc' or 'desc'. Deprecated: use "+" or "-" before the column name with sortby.

Example

<<UnfoldSubpages pagename=Help maxpages=5 >>

Included from Help/AddingPages

Adding pages

To add a new page to the wiki, all you have to do is come up with a meaningful title and put it between [[double brackets]].

Then you can go ahead and click the question mark at the end of your new hyperlink, and the Wiki will give you a window for making the new page.

The page name can contain any character, except:

  • angle brackets (<>),
  • square brackets ([]),
  • curly brackets ({}),
  • double quotes ("),
  • pipe (|),
  • and hash sign (#) that is used for anchors.

If you wish to add documents with complex markup to the wiki, you might be better off providing a URL to it than trying to add the text of the document here, like so:

[[http://phpwiki.sourceforge.net/|PhpWiki project homepage]]

PhpWiki project homepage

The Wiki does not support most HTML tags, only the simplest. See TextFormattingRules. <tags>They will just render like text.</tags> Wiki is meant to be as simple as possible to encourage use.

Note that there is a feature that your system administrator can enable to allow embedded HTML, but there are security risks involved.

Removing pages

Removing a page will clear all it versions. The history of the page will still be visible and the removal will appear in the RecentChanges. It will be possible to restore the page by creating a new version; in that case, all previous versions will be restored.

You must be logged as administrator to be able to remove a page.

Purging pages

Purging a page will delete it with all its versions without any possibility to restore it. Purging will not appear in the RecentChanges.

You must be logged as administrator to be able to purge a page.

Included from Help/Advice for Mediawiki users

If you contribute to Wikipedia or to other wikis that use the Mediawiki software, you will notice some differences in the wiki syntax of Mediawiki and the wiki syntax of Phpwiki.

Syntax differences

Here are some differences between Mediawiki and Phpwiki:

  • Italics are // (but you can also use '' like in Wikipedia)
  • Bold is ** (you cannot use ''' like in Wikipedia)
  • Line break is \\ in Wikicreole, <br /> in Mediawiki
  • There is no automatic capitalisation of first character of page name. Pages [[foo]] and [[Foo]] are different.
  • A space in a page name in not equivalent to an underscore. Pages [[foo bar]] and [[foo_bar]] are different. We recommend to use a space in the page names.
  • Many things that are built-in in Mediawiki use plugins in Phpwiki (table of contents, redirections, back links, etc.).
  • Redirections are less sophisticated in Phpwiki (e.g. backlinks do not show redirected pages)

Tables

You can use the Mediawiki table syntax.

Included from Help/Categories

Categories are a way to group pages that are related to the same subject. They provide an easy way to browse the wiki.

In Phpwiki, categories are not stored in a separate namespace like in Mediawiki for instance. A category is a page with a name that begins with “Category” and contains a call to the BackLinks plugin.

Creating a new category

The simplest way to create a new category is to to go the CategoryCategory page.

Enter its name (starting with “Category”) and hit “CreatePage” button.

This will automatically insert the necessary plugins calls.

You might want to add at the beginning of the page a paragraph explaining the purpose of the category.

Suppose you want to create a category called CategoryFruit. You might add:

This Category groups the different kinds of fruit.

By default, the new category is created as a subcategory of CategoryCategory (the “root” category). You might want to change this (see below “Category hierarchies”).

Putting a page in a category

To put the article banana in CategoryFruit, you have to put at the end of the page:

----
[[CategoryFruit]]

The CategoryFruit page will then display your text describing the purpose of the category, then the list of pages in the category.

The can be done very easily by using the Insert Categories button of the edit toolbar when editing the page.

Category hierarchies

The simplest way to use categories is to use “flat” categories. But you can also build a hierarchy of categories by putting categories themselves in categories.

For example, you can put the [[CategoryFruit]] in [[CategoryFood]] instead of default [[CategoryCategory]].

Tips and tricks

  • Page CategoryCategory is the root category. All categories should be subcategories of this category (recursively).
  • If in a page you need to refer to a category, you should add a semi-colon: [[:CategoryFruit]]. This will create a link to the category without putting the page in the category (which would be the case if using [[CategoryFruit]]).
  • You can put a page in several categories if needed.

PhpWikiDocumentation

Included from Help/EditText

All pages have an Edit link. You can edit the page you are reading by clicking that link.

Included from Help/GoodStyle

“Young writers often suppose that style is a garnish for the meat of prose, a sauce by which a dull dish is made palatable. Style has no such separate entity; it is nondetachable, unfilterable. The beginner should approach style warily, realizing that it is himself he is approaching, no other; and he should begin by turning resolutely away from all devices that are popularly believed to indicate style--all mannerisms, tricks, adornments. The approach to style is by way of plainness, simplicity, orderliness, sincerity.”

--Strunk and White, “The Elements of Style”

And thus an American textbook, typical required reading for 10th-grade English students, unknowingly extols some virtues of Wabi Sabi.

--scummings

Included from Help/GoogleLink

A new UserPreferences setting to optionally add a [G] link to unknown pages, with a link to Google:[pagename]. Default: Off

See MeatBall:GooglePrompt

See Also

Included from Help/UpLoadPlugin

The UpLoad plugin displays an editbox and two buttons.

  • The first button lets you choose the file to be uploaded at your local filesystem. The text value of this button is localised from your browser.
  • The second “Upload” button actually uploads the given filename to the upload directory.

This directory is not browsable, any file there may be accessed by using the “Upload:” InterWikiMap prefix to the given filename. This way you can easily inline uploaded images.

Usage

<<UpLoad arguments>>

Arguments

Argument

Description

Default value

logfile

Local path. The format is currently HTML - a new <tr> row per entry - and not log file syntax.

phpwiki-upload.log

autolink

Add the uploaded filename to the list of uploaded files at the page.

true

page

The page where the uploaded files are publicly listed, if autolink is true.

Current page

mode

'actionpage' or 'edit'

actionpage

Notes

  1. The user must be authenticated to be able to upload.
  2. The filename may not end with certain disallowed extensions, to prevent from abuse.
  3. MAX_FILE_SIZE is configured by the config.ini option MAX_UPLOAD_SIZE, which defaults to 16MB. Your webserver and PHP may add another limit.
  4. Already existing uploaded files are NOT overwritten.

Example

<<UpLoad>>

See Also

Included from Help/UriResolverPlugin

Converts an URI-escaped identifier back to an unique XML-ID.

Internal usage for SemanticWeb.

Author

See Also

Included from Help/UserPreferencesPlugin

The UserPreferences plugin allows any user to adjust his own preferences. The plugin must be used in the page UserPreferences. Preferences are stored in metadata in the current session, within the user's home page or in a database.

Usage

<<UserPreferences>>

Arguments

None.

Example

<<UserPreferences>>

Error: You are not logged in, cannot display UserPreferences.

Author

See Also

Included from Help/UserRatingsPlugin

The UserRatings plugin lists the user's ratings.

Usage

<<UserRatings arguments>>

Arguments

Argument

Description

Default value

dimension

0

userids

Array of userids to display ratings for; null/empty for active user only

null

pageids

Array of pageids to display ratings for; null for all of current active user's ratings

null

category

a category to display ratings for; null for no category; has higher precedence than pageids

null

pagename

exclude

Pages to exclude (allows multiple pagenames exclude=HomePage,RecentChanges)

empty

limit

limit of <=0 is show-all

0

noheader

Boolean. If true, header should be omitted.

false

userPage

Boolean. If true, we're on a user's homepage, get their ratings

false

nobuds

Boolean.

false

info

columns to display (hits, pagename, author, ratingwidget...)

pagename

Example

<<UserRatings>>

Author

  • Dan Frankowski

See Also

Included from Help/VideoPlugin

The Video plugin allows to include video in a wiki page. Video file must be in an HTML 5 format:

  • Ogg (.ogg suffix),
  • MP4 (.mp4 suffix),
  • WebM (.webm suffix).

The Video plugin can also be called with the {{video.ogg}} syntax.

Arguments

You must provide a url or a file argument (but not both).

Argument

Description

Default value

url

The URL of a video file.

empty

file

The name of a video file that has been uploaded.

empty

width

The width of the video (in pixels).

460

height

The height of the video (in pixels).

320

autoplay

Boolean. If true, auto play the video when page is displayed.

false

Examples

A video:

<<Video url=http://a.video.server/a_video.ogg>>

Another video:

<<Video file=another_video.ogg>>

This is equivalent to:

{{another_video.ogg}}

Big Buck Bunny

{{https://wiki.yoctoproject.org/wiki/images/a/a6/Big-buck-bunny_trailer.webm}}

Authors

  • Roger Guignard, Alcatel-Lucent
  • Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/VisualWikiPlugin

The VisualWiki plugin produces a graphical site map of PhpWiki.

It produces a graphical sitemap of PhpWiki by calling the dot commandline tool from Graphviz (http://www.graphviz.org).

Usage

<<VisualWiki arguments>>

Arguments

Arguments allowed only if VISUALWIKI_ALLOWOPTIONS is true.

Argument

Description

Default value

imgtype

png

width

false

height

false

colorby

age

fillnodes

off

label

name

shape

ellipse

large_nb

5

recent_nb

5

refined_nb

15

backlink_nb

5

neighbour_list

exclude_list

include_list

fontsize

9

debug

false

help

false

Example

<<VisualWiki>>

Author

  • Johannes Große

See Also

Included from Help/WantedPagesPlugin

The WantedPages plugin returns a list of referenced pages which do not exist yet.

All empty pages which are linked from any page - with an ending question mark, or for just a single page, when the page argument is present.

Usage

<<WantedPages arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

page

Just for a single page.

empty

withlinks

Boolean. If true, display links.

false

noheader

Boolean. If true, header should be omitted.

false

exclude_from

Comma-separated list of pages to exclude.

InterWikiMap

limit

Maximum number of wanted pages to display.

100

Example

<<WantedPages>>
Wanted Pages in this wiki:
|<<   << - 1 / 1 - >>   >>|
|<<   << - 1 / 1 - >>   >>|
Page Name. Links.
SteveWainsteadEatsLiveWorms (1 Link)
ThisPageShouldNotExist (1 Link)
this is a page link (1 Link)
WikiWords (1 Link)
link (1 Link)

Author

See Also

Included from Help/WatchPagePlugin

The WatchPage plugin allows to manage notifications e-mails per page.

Usage

<<WatchPage arguments>>

Arguments

Argument

Description

Default value

page

The page to execute upon

current pagename

mode

add

Example

<<WatchPage page=HomePage>>

Author

See Also

Included from Help/WhoIsOnlinePlugin

The WhoIsOnline plugin shows summary information of the current user sessions.

Usage

<<WhoIsOnline arguments>>

Arguments

Argument

Description

Default value

mode

summary or detail

summary

pagename

Refer to the page with the other mode.

[pagename]

allow_detail

Boolean. If true, in summary mode, add a link to the detail mode.

false

dispose_admin

Boolean. If true, also display the fact that admin is online.

false

Note: if you use allow_detail with mode detail, use the following syntax to be able to switch between modes:

<<WhoIsOnline mode||=detail allow_detail=true>>

Example

<<WhoIsOnline>>
Who is Online
WhoIsOnline Our users created a total of 1 pages.
We have a total of 1 registered users.
In total there are 21 user sessions online: 0 registered and 1 guests.
Most users ever online was 2 at 13 March 2024 20:31.
Registered Users Online: None
This data is based on users active over the past 24 minutes.

Author

See Also

Included from Help/WikiAdminChownPlugin

The WikiAdminChown plugin allows to change the owner of pages.

Usage

<<WikiAdminChown arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

user

User name

empty

Example

<<WikiAdminChown s=Temp*>>
Plugin WikiAdminChown disabled. Plugin not run: not in browse mode
<?plugin WikiAdminChown s=Temp*?>

Author

See Also

Included from Help/WikiAdminDeleteAclPlugin

The WikiAdminDeleteAcl plugin allows to delete page permissions.

Usage

<<WikiAdminDeleteAcl arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

info

Columns to include in listing

pagename, perm, mtime, owner, author

Example

<<WikiAdminDeleteAcl s=Temp*>>
Plugin WikiAdminDeleteAcl disabled. Plugin not run: not in browse mode
<?plugin WikiAdminDeleteAcl s=Temp*?>

Author

  • Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/WikiAdminPurgePlugin

The WikiAdminPurge plugin allows to purge pages.

Usage

<<WikiAdminPurge arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

Example

<<WikiAdminPurge s=Temp*>>
Plugin WikiAdminPurge disabled. Plugin not run: not in browse mode
<?plugin WikiAdminPurge s=Temp*?>

Author

  • Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/WikiAdminRemovePlugin

The WikiAdminRemove plugin allows to remove pages.

Usage

<<WikiAdminRemove arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

Example

<<WikiAdminRemove s=Temp*>>
Plugin WikiAdminRemove disabled. Plugin not run: not in browse mode
<?plugin WikiAdminRemove s=Temp*?>

Author

See Also

Included from Help/WikiAdminRenamePlugin

The WikiAdminRename plugin allows to rename pages.

Usage

<<WikiAdminRename arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

createredirect

Boolean. If true, create a redirect page from the old to the new pagename.

false

updatelinks

Boolean. If true, change pagename in all linked pages also.
not yet implemented

false

Example

<<WikiAdminRename s=Temp*>>
Plugin WikiAdminRename disabled. Plugin not run: not in browse mode
<?plugin WikiAdminRename s=Temp*?>

Author

See Also

Included from Help/WikiAdminSearchReplacePlugin

The WikiAdminSearchReplace plugin allows to search and replace text in pages.

Usage

<<WikiAdminSearchReplace arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

Example

<<WikiAdminSearchReplace s=Temp*>>
Plugin WikiAdminSearchReplace disabled. Plugin not run: not in browse mode
<?plugin WikiAdminSearchReplace s=Temp*?>

Author

See Also

Included from Help/WikiAdminSelectPlugin

PhpWikiAdministration Page Explorer main plugin.

Usage

<<WikiAdminSelect arguments>>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

noheader

Boolean. If true, header should be omitted.

false

include_empty

Boolean. If true, pages that are referenced but not yet created are included in the list.

false

info

none

Example

<<WikiAdminSelect s=Temp*>>

Select:

| | | | | | | | |
Page NameClick to reverse sort order Last Modified. Last Author. Hits.
Template/Attribute 13 July 2023 14:49 admin 32
Template/Category 13 July 2023 14:49 admin 43
Template/Example 13 July 2023 14:49 admin 30
Template/Linkto 13 July 2023 14:49 admin 40
Template/NewPlugin 13 July 2023 14:49 admin 42
Template/Relation 13 July 2023 14:49 admin 49
Template/Talk 13 July 2023 14:49 admin 28
Template/UserPage 13 July 2023 14:49 admin 27

Author

See Also

Included from Help/WikiAdminSetAclPlugin

The WikiAdminSetAcl plugin allows to change access rights on pages.

Usage

<<WikiAdminSetAcl arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

info

Columns to include in listing

pagename, perm, mtime, owner, author

Example

<<WikiAdminSetAcl s=Temp*>>
Plugin WikiAdminSetAcl disabled. Plugin not run: not in browse mode
<?plugin WikiAdminSetAcl s=Temp*?>

Author

See Also

Included from Help/WikiAdminSetAclSimplePlugin

The WikiAdminSetAclSimple plugin allows to change access rights on pages.

Usage

<<WikiAdminSetAclSimple arguments>>

Arguments

Argument

Description

Default value

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

info

Columns to include in listing

pagename, perm, mtime, owner, author

Example

<<WikiAdminSetAclSimple s=Temp*>>
Plugin WikiAdminSetAclSimple disabled. Plugin not run: not in browse mode
<?plugin WikiAdminSetAclSimple s=Temp*?>

Author

See Also

Included from Help/WikiAdminSetExternalPlugin

The WikiAdminSetExternal plugin allows to mark selected pages as external.

Usage

<<WikiAdminSetExternal arguments>>

Arguments

Argument

Description

Default value

external

Boolean. If true, set the page to external.

true

s

Pages to select

none (if argument "s" is not provided, the list of pages with checkboxes will be displayed)

info

Columns to include in listing

pagename, external, mtime

Example

<<WikiAdminSetExternal s=Temp*>>
Plugin “WikiAdminSetExternal” does not exist.

Author

  • Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/WikiAdminUtilsPlugin

Some special actions for PhpWikiAdministration and PhpWikiDebug.

Usage

<<WikiAdminUtils action="purge-cache">>
<<WikiAdminUtils action="purge-bad-pagenames">>
<<WikiAdminUtils action="purge-empty-pages">>
<<WikiAdminUtils action="email-verification">>
<<WikiAdminUtils action="db-check">>
<<WikiAdminUtils action="db-rebuild">>

Arguments

Argument

Description

Default value

action

Valid action are: "purge-cache", "purge-bad-pagenames", "purge-empty-pages", "email-verification", "db-check" and "db-rebuild"

none (mandatory argument)

label

Custom button text

Each action has a default button text

Example

<<WikiAdminUtils action="purge-cache">>
Plugin WikiAdminUtils disabled. Plugin not run: not in browse mode
<?plugin WikiAdminUtils action="purge-cache"?>

Authors

See Also

Included from Help/WikiBlogPlugin

This simple plugin allows blog-style entries on a page. Try making a few entries, and then look at RecentChanges to get an idea of how things work.

This plugin shows 'blogs' (comments/news) associated with a particular page and provides an input form for adding a new blog.

Arguments

Argument

Description

Default value

page

page which is blogged to

Current page

order

  • 'normal' - place in chronological order
  • 'reverse' - place in reverse chronological order

normal

mode

  • 'show' - only show old blogs
  • 'add' - only show entry box for new blog
  • 'show,add' - show old blogs then entry box
  • 'add,show' - show entry box followed by old blogs

show,add

Usage

Add <<WikiBlog>> at your PersonalPage and BlogArchives and BlogJournal will find the Blog entries automatically.

Now it is also the base class for all attachable pagetypes: "wikiblog", "comment" and "wikiforum"

Hints/comments

To have the blog show up on a separate page:

On TopPage, use <<WikiBlog mode=add>> Create TopPage/Blog with this page as actionpage: <<WikiBlog pagename=TopPage mode=show>>

To have the main ADMIN_USER Blog appear under Blog and not under WikiBlog/Blog or UserName/Blog as for other users blogs, define BLOG_DEFAULT_EMPTY_PREFIX=true use the page Blog as basepage and user="" (as default for ADMIN or current user) and pagename="Blog" in the various blog plugins (BlogArchives, BlogJournal)

Example

You must be logged in to add blog entries.

Author

  • Michael Van Dam, major refactor by Jeff Dairiki (as AddComment)
  • Changed as baseclass to AddComment and WikiForum and EditToolbar integration by Reini Urban.

See Also

Included from Help/WikiFormPlugin

The WikiForm plugin provides generic input buttons.

Usage

<<WikiForm arguments>>

Arguments

Argument

Description

Default value

action

upload, loadfile, dumphtml or dumpserial

upload

default

Default value in the input box

empty

buttontext

Text displayed on the button

if action=upload, Upload
if action=loadfile, Load File
if action=dumphtml, Dump Pages as XHTML
if action=dumpserial, Dump Pages

overwrite

When loading pages, force overwrite or not

false

size

Size of the input box

50

Example

<<WikiForm action="loadfile" buttontext="Load File">>

Author

See Also

Included from Help/WikiFormRichPlugin

Create generic and enhanced forms, with various options:

  • editbox[] name=.. value=.. text=.. autocomplete=0|1
  • checkbox[] name=.. value=0|1 checked text=..
  • radio[] name=.. value=.. text=..
  • pulldown[] name=.. value=.. selected=.. text=.. autocomplete=0|1
  • combobox[] name=.. value=.. text=.. method=.. args=..
  • hidden[] name=.. value=..
  • submit[]
  • action, submit buttontext, optional cancel button (bool)
  • method=get or post, Default: post.

Valid arguments for pulldown and editbox: autocomplete=1, Default: 0

If autocomplete=1, additional arguments method and args may be used. autocomplete together with dyn-methods (see below) should be used to handle larger lists (> 500).

If no method is given, value will be used to fill in the valid values.

method="xmlrpc:name [optional args]"
method="dynxmlrpc:url [optional args]"
method="url:http://server/wiki/method"
method="dynurl:http://server/wiki/method"
method="array:jsvariable"
method="plugin:pluginname [optional args]"
  • The plugin must return a pagelist.
  • args are optional arguments, space separated, for the method.
  • A combobox is a pulldown with autocomplete=1.
  • Values which are constants are evaluated.
  • The cancel button must be supported by the action (just some wikiadmin actions so far)
  • improve layout by: nobr=1
  • some allow values as list from <!plugin-list pluginname args !>

Samples

<<WikiFormRich action=dumpserial method=get
               checkbox[] name=include value="all"
               editbox[] name=directory value=DEFAULT_DUMP_DIR
               editbox[] name=pages value=*
               editbox[] name=exclude value=""
>>
 include
directory 
pages 
exclude 

<<WikiFormRich action=dumphtml method=get
               editbox[] name=directory value=HTML_DUMP_DIR
               editbox[] name=pages value="*"
               editbox[] name=exclude value=""
>>
directory 
pages 
exclude 

<<WikiFormRich action=loadfile method=get
               editbox[]  name=source value=DEFAULT_WIKI_PGSRC
               checkbox[] name=overwrite value=1
               editbox[]  name=exclude value=""
>>
source 
 overwrite
exclude 

<<WikiFormRich action=TitleSearch method=get class=wikiadmin nobr=1
               editbox[] name=s text=""
               submit[]
               checkbox[] name=case_exact
               checkbox[] name=regex
>>
    case_exact  regex 

<<WikiFormRich action=FullTextSearch method=get class=wikiadmin nobr=1
               editbox[] name=s text=""
               submit[]
               checkbox[] name=case_exact
               checkbox[] name=regex
>>
    case_exact  regex 

<<WikiFormRich action=FuzzyPages method=get class=wikiadmin nobr=1
               editbox[] name=s text=""
               submit[]
               checkbox[] name=case_exact
>>
    case_exact 

<<WikiFormRich action=AppendText buttontext="AddPlugin"
               radio[] name=s value=<!plugin-list BackLinks page=WikiPlugin limit=5 !>
>>
 s

<<WikiFormRich action=AppendText buttontext="AddPlugin"
               combobox[] name=s text="" style="width:60px" value=<!plugin-list BackLinks page=WikiPlugin !>
               submit[]
>>
 

<<WikiFormRich action=AppendText buttontext="AddCategory"
               pulldown[] name=s text="Categories: " value=<!plugin-list TitleSearch s=Category !>
>>
Categories:  

<<WikiFormRich action=SemanticSearch buttontext="AddRelation"
               combobox[] name=relation method="xmlrpc:listRelations"
               submit[]
               checkbox[] name=case_exact text="Case-exact?"
>>

<<WikiFormRich action=AppendText buttontext="InsertTemplate"
               combobox[] name=s text="Template: " method="plugin:titleSearch s=Template*"
               submit[]
>>
Template:  

<<WikiFormRich action=GoTo
               editbox[] name=page text="GoTo: " method="dynxmlrpc:titleSearch s=H" style="width:100px" autocomplete=1
               submit[]
>>

Author

See Also

Included from Help/WikiForumPlugin

The WikiForum plugin handles a threaded list of comments/news associated with a particular page (one page per topic) and provides an input form for adding a new message.

Usage

<<WikiForum arguments>>

Arguments

Argument

Description

Default value

pagename

pagename

order

normal (oldest first)

mode

info

noheader

Boolean. If true, header should be omitted.

false

Example

<<WikiForum>>

You must be logged in to add blog entries.

Author

See Also

Included from Help/WikiPollPlugin

The WikiPoll plugin provides configurable polls.

Usage

<<WikiPoll arguments
    questions and possible answers
>>

Syntax:

question[1]="Do you like PhpWiki?"
answer[1][1]="Yes" answer[1][2]="Do not know" answer[1][3]="No"

Administration:

<<WikiPoll page=PhpWikiPoll admin=true>>

Arguments

Argument

Description

Default value

require_all

Boolean: if true, all questions must be answered

true

require_least

Minimum number of questions that must be answered

0

admin

Boolean: if true, an administrator can view and reset statistics (not yet implemented)

false

Example

See example in PhpWikiPoll.

Author

Included from Help/WikiTranslationPlugin

Display pagenames and other internal strings in various languages.

Can also be used to let a favorite translation service translate a whole page. Current favorite: translate.google.com if from_lang = en or fr

Usage

  <<WikiTranslation languages=de,en,sv string="" page=""
                            what=pages from_lang=0 nolinks=0 noT=0 debug=0
 >>

Arguments

All PageList arguments, plus the following ones:

Argument

Description

Default value

languages

comma delimited string of de,en,sv,...

string

string defined in a <lang>.po file to be translated

page

A whole page to translate by the currently defined external translation service.

what

One of pages, buttons, plugins or wikiwords

match

Filter

*

from_lang

Override the current lang.

nolinks

Do not display any links (for development only)

noT

Do not display the T link (for development only)

Example

  <<WikiTranslation page=HomePage languages=fr>>
     Translation service for HomePage into french (redirect to translate.google.com)
  <<WikiTranslation what=pages>>
     Translation matrix of all pages with proper translations (all in pgsrc)
  <<WikiTranslation what=wikiwords match="W*" limit=20>>
     Translation matrix of the first 20 wikiwords matching "W*"
  <<WikiTranslation string=HomePage languages=fr,de,sv>>
     Translation matrix for all given languages
  <<WikiTranslation string=HomePage>>
     Translation matrix for all supported languages
  <<WikiTranslation string=HomePage languages=fr>>
     Just return the translated string for this language.

Author

See Also

Included from Help/WikicreoleTablePlugin

The WikicreoleTable plugin allows a user to specify a <table> in Wikicreole syntax. The plugin is not meant to be called directly, just use the syntax below to insert your table.

Wikicreole table syntax

All cells are separated by single pipes. Leading spaces are permitted before the first cell of a row and trailing spaces are permitted at the end of a line. The ending pipe is optional.

You can embed links, bold, italics, line breaks, and nowiki in table cells.

Equal sign directly following pipe defines a header. Headers can be arranged horizontally or vertically.

|=Heading Col 1 |=Heading Col 2         |
|Cell 1.1       |Two lines\\in Cell 1.2 |
|Cell 2.1       |Cell 2.2               |

will give:

Heading Col 1 Heading Col 2
Cell 1.1 Two lines
in Cell 1.2
Cell 2.1 Cell 2.2

Toolbar

In the Edit Toolbar, the icon allows to create a Wikicreole table from Tab Separated Values.

You have to select the lines containing the Tab Separated Values and click on the icon. The resulting table will contain only normal cells, you can add headers if needed.

This feature is expecially useful when you copy spreadsheet cells from Libreoffice Calc or Excel. If Excel cells contain multiple lines, the results will be wrong, you will need to manually convert these multiline cells. In Libreoffice Calc, there is no such issue, but the newlines will be lost.

Author

  • Marc-Etienne Vargenau, Alcatel-Lucent

See Also

Included from Help/YouTubePlugin

Usage

  <<YouTube v=-dnL00TdmLY
           width=425 height=350
           size=medium|small|large
           style=inline|link
           autoplay=0|1
           browse="Daily Pick|Most Recent|Most Viewed|Top Rated|
                   Most Discussed|Top Favorites|Most Linked|
                   Recently Featured|Most Responded|Watch on Mobile"
           time="Today|This week|This month|All Time"
           category="All|Autos & Vehicles|Comedy|Entertainment|
                   Film & Animation|Gadgets & Games|Howto & DIY|Music
                   News & Politics|People & Blogs|Pets & Animals|
                   Sports|Travel & Places"
           language="All|English|Spanish|Japanese|German|Chinese|French"
 >>

Arguments

Argument

Description

Default value

v

key of the video

required, or define browse

browse

One of "Daily Pick", "Most Recent", "Most Viewed", "Top Rated", "Most Discussed", "Top Favorites", "Most Linked", "Recently Featured", "Most Responded", "Watch on Mobile"

optional, if v is empty

time

One of "Today", "This Week", "This Month", "All Time" (optional).

Today

category

One of "All", "Autos & Vehicles", "Comedy", "Entertainment", "Film & Animation", "Gadgets & Games", "Howto & DIY", "Music", "News & Politics", "People & Blogs", "Pets & Animals", "Sports", "Travel & Places" (optional).

All

language

One of "All", "English", "Spanish", "Japanese", "German", "Chinese", "French" (optional).

All

width

Video width (optional).

425

height

Video height (optional).

350

autoplay

If autoplay=1 it starts automatically to play, otherwise to have to click on it (optional).

0

style

If link will display a small icon with a link to the Youtube video (optional).

inline

size

Video size (medium or small or large). Overrides width and height (optional).

medium

Examples

Link

<<YouTube v=-dnL00TdmLY style=link>>
YouTube video -dnL00TdmLY

Inline

<<YouTube v=-dnL00TdmLY>>

Daily Pick

<<YouTube browse="Daily Pick">>

Top Rated (This Month)

<<YouTube browse="Top Rated" time="This Month">>

See Also

Author

Included from Help/text2pngPlugin

Convert text into a png image using GD without using WikiPluginCached. The images are stored in a private <PHPWIKI_DIR>/images/ subdirectory instead, which are not timestamp checked at all. Delete the .png file(s) if you change anything.

This is a really simple and stupid plugin, which might need some work.

Usage

<<text2png text="some text">>

Arguments

Argument

Description

Default value

text

some text to display

lang

language subdirectory

force

set to 1 to recreate the image

fontsize

18. with GD1 it's the pixelsize, with GD2 the pointsize

with_shadow

1

fontcolor

#000000

shadowcolor

#AFAFAF

backcolor

#ffffff

Configurable Options

See the sourcecode. You'd probably need to adjust $ttfont and text2png_debug.

Example

<<text2png text='Hello WikiWorld!'>>

See Also

END OF DOCUMENT