Per Group Customizations
One of the purposes of WikiGroups is to allow a WikiAdministrator to customize the features of PmWiki on a per-group basis. Here is where per group customizations come into play.
The local/ subdirectory (in the same directory that holds pmwiki.php) is used to hold local configuration files. To perform local customizations for a particular WikiGroup, place the customizations in a file called "Group.php" (where Group is the actual name of the page group in question) in the local/ subdirectory. This file will be automatically processed after processing any local customizations in the config.php file.
For example, to change the image displayed in the upper-left corner of pages in the "Chess" WikiGroup, one could create local/Chess.php containing
<?php $PageLogoUrl = "/myimages/chess.gif"; ?>
This would cause all pages in the Chess WikiGroup to use "/myimages/chess.gif" as the logo image instead of the default.
Almost any customization that would be placed in config.php can be used as a per-group customization.
PmWiki also allows per-page customizations, simply use the full name of the page to be customized instead of the group. For example, one can use the file local/Chess.HomePage.php to set local customizations for Chess.HomePage.
For all local customizations, PmWiki first processes the local/config.php file, and then looks for a per-page customization file in the local/ subdirectory to process, followed by any per-group customization file. If no per-page or per-group customizations are loaded, then PmWiki loads local/default.php.
Any customization file can set $EnablePGCust
=0; to prevent later page/group/default customizations from being automatically loaded. If a per-page customization needs to have the per-group customizations loaded first, it can do so directly by using PHP's include_once()
function.
Any passwords required for a group should be set in the group's GroupAttributes page (see PasswordsAdmin) and not in a group customization file.
WikiGroups are an easy way to host multple sites in a single PmWiki installation by giving each site its own group. Another approach is to use WikiFarms, which allows each site to have its own set of WikiGroups and local customization files. However, if you're hoping to add several levels of groups, read this first.
<< Layout advanced | PmWiki.DocumentationIndex | Passwords administration >>