Modifications we have made to PhpWiki

Currently the WlugWiki runs on a CVS version of the PhpWiki from early 2002 (sometime around March). There are a lot of hidden things that the WlugWiki does that we've added and probably need to support with anything we move to.

See WlugWikiPatches for where we are keeping track of our patches and merging them in to the current phpwiki head.

And that all is just off the top of my head. -- PerryLorier

Excellent support for search engines

  • rel="nofollow" on links that we don't want search engines searching (PageHistory, Diff, Previous versions, Edit etc)
  • meta robots="noindex,follow" on various pages we don't want indexed like RecentChanges
  • meta robots="noindex,nofollow" on pages we don't want search engines looking at at all (eg PageHistory).
  • We moved RecentChanges into an iframe which helps by search engines not indexing terms being on pages that are unrelated to those terms.
  • (Note: Please don't open this in your browser. It's for google. It's a big RDF file that will mean nothing to you.) Since I added this a week ago google is indexing only the pages on the wiki that have changed every 24 hours. That means that wlug content is getting into google search results in under 24 hours.
  • The "google trick" where we put up a notice welcoming google users. This probably needs an update, due to the most of above google no longer sends people to the "wrong" wiki page so the need for searching for pages that google should have sent them to is a lot more irrelevant.

Excellent antispam support

  • Warnings for h-zone fetched and referred pages to make it a disincentive for people to try and claim wiki pages as being "defaced"
  • John's excellent antispam stuff, based on:

    • netblocks
    • useragents
    • added content


  • Added the sidebar so people can easily see RecentChanges. I believe this was the major reason that the wiki took off (people could see that people were making changes to the wiki).
  • Tweaked to be nearly good enough with font support.
  • Obvious indication if IPv6/IPv4 was working.
  • Support for printing wiki pages elegantly.
  • Support for low end browsers (text only, no javascript). Drop the sidebar for browsers with limited screen real-estate.
  • Fully UTF-8 Clean, for both content and titles.
  • Support for automatic linking manpage(8) style WikiWords. The regex for wikiwords on this wiki is: (?<![[:alnum:]])(?:(?:[[:upper:]][[:lower:]]+){2,}|[[:alnum:]-+\._]+\([1-9][a-z]*\))(?![[:alnum:]]+)
  • Support for / based wiki namespace.
  • Support for multiple vhosts showing the same content without worry about being redirected to other hosts (www,www6,www4,www2), useful for testing.
  • Error Haiku's


  • SOAP Interface
  • Meeting Reminder Bot / Committee Reminder bot etc
  • PCI Device Database.
  • Customised RecentChanges for the sidebar
  • WLUG member plugin


  • Support for three markup formats (interwikimap, old markup and new markup).
  • Added "by UserName" to the "Last Edited" box at the bottom.
  • IPv6 Support.
  • Extremely aggressive caching to reduce bandwidth costs (It dropped our bandwidth usage by at least 25%). This also made google happier to index our site more frequently.
  • Faster PostgreSQL support (doesn't lock needlessly)
  • full text searching through greenstone (with a wiki plugin for this)
  • WantedWikis generation (AristotlePagaltzis thinks this is not something to list: many wiki engines generate such a page live, vastly increasing its usefulness)
  • Easy extension through plugins, and easily hackable source
  • Support for gzipping pages being sent.
  • Easily backed up, modified, and interrogated backend (postgres) vs phpwiki's default (dbm).

Modifications we should make (but haven't made yet)

  • Improve PhpWiki HTML output to remove presentational aspects from the HTML
  • Get a clean HTML/CSS seperation between content and style
  • The PCI interface script perry wrote made use of a couple of flags, hide_sidebar and hide_extra, which hid things not needed for that page. Also add support for these to RSS output, as RSS readers don't need the sidebar, titlebar, edit buttons, etc.
  • plugin for man pages
  • get footnotes working in new markup?
  • auto-generated table of contents for the #hdr stuff
  • search and replace for links, where you are shown a bit of context for each link and can decide how to treat it (ie. when replacing DebianLinux with Debian, options "Use [Debian]", "Use [DebianLinux|Debian]", "Use custom text:")

There's also an old page where people have made suggestions - WantedWikiFeatures.