authors (intermediate)
This page describes the «variables» that are associated with pages. Page variables have the form {$variable}, and can be used in page markup or in certain formatting strings in PmWiki. For example, the markup «{$Group}» renders in this page as «PmWiki».
Note that these variables do not necessarily exist in the PHP code, because they have to be determined for a specific page. (However, they are usable in FmtPageName strings.)
There is also the form {pagename$variable}, which returns the value of the variable for another page. For example, «{MarkupMasterIndex$Title}» displays as «Markup Master Index».
Default page variables
The page variables defined for PmWiki are:
{$Group} - page’s group name, as in «PmWiki»
{$Groupspaced} - spaced group name, as in «PmWiki»
{$DefaultGroup} - default group name, as in «Photo»
{$SiteGroup} - default group name for e.g. RecentChanges, as in «Site»
{$Name} - page name, as in «PageVariables»
{$Namespaced} - spaced page name, as in «Page Variables»
{$DefaultName} - name of default page, as in «HomePage»
{$FullName} - page’s full name, as in «PmWiki.PageVariables»
{$Title} - page title (may differ from Name), as in «Page-specific Variables»
{$Titlespaced} - title/spaced page name, as in «Page-specific Variables»
{$Description} - page’s description from the (:description:) markup, as in «Documentation for «variables» that are associated with pages.»
{$LastModified} - date page was edited, as in «23.06.2006 22:02″
{$LastModifiedBy} - page’s last editor, as in «Pico»
{$LastModifiedHost} - IP of page’s last editor, as in «12.33.45.37″
{$LastModifiedSummary} - Summary from last edit, as in «Supplied «as in» example for {$ScriptUrl}»
{$LastModifiedSummary} with [= and =] to avoid having PmWiki process any markup that may be contained in the summary.
{$PageUrl} - page’s url, as in «http://wiki.khotty.ru/PmWiki/PageVariables»
{$Action} - page’s url action argument, as in «browse»
In addition to the above, there are some page-invariant variables available through this markup:
{$Author} - the name of the person currently interacting with the site, as in «»
{$AuthId} - current authenticated id, as in «» Please note the lower case ‘d’. {$AuthID} returns nothing
{$Version} - PmWiki version, as in «pmwiki-2.1.27″
{$VersionNum} - The internal version number, as in «2001027″
{$ScriptUrl} - The url to the pmwiki script, as in «http://wiki.khotty.ru»
Custom page variables
You may add custom page variables as a local customization. In a local configuration file or a recipe script, use the variable $FmtPV:
$FmtPV['$VarName'] = "'variable definition'"; $FmtPV['$CurrentSkin'] = '$GLOBALS["Skin"]';
Defines new Page Variable of name $CurrentSkin, which can be used in the page with {$CurrentSkin} (also for Conditional markup). It’s necessary to use the single quotes nested inside double-quotes as shown above (preferred) or a double-quoted string nested inside single-quotes like '"this"'.
Making a {$WikiTitle} markup doesn’t quite follow the formula above. Instead you need to use
$FmtPV['$WikiTitle'] = '$GLOBALS["WikiTitle"]';
See also
- Cookbook:More custom page variables
- PmWiki.Variables — about variables internal to PmWiki.
- PmWiki.MarkupMasterIndex — complete list of PmWiki markups.
« Conditional markup | Documentation Index | Markup master index »
