Recent Changes - Search:


Page-specific Variables


 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 "Pm Wiki"

{$DefaultGroup} - default group name, as in "Main"

{$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 "June 23, 2006, at 06:02 PM"

{$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}"

Note: Enclose {$LastModifiedSummary} with [= and =] to avoid having PmWiki process any markup that may be contained in the summary.


{$PageUrl} - page's url, as in "http://www.ubbdf.fr/pmwiki/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://www.ubbdf.fr/pmwiki"



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


<< Conditional markup | Documentation Index | Markup master index >>



Is there a variable like $LastModified, but which shows me the creation time?

No, but you can create one in config.php. For instance:

# add page variable {$PageCreationDate} in format yyyy-mm-dd
$FmtPV['$PageCreationDate'] = 'strftime("%Y-%m-%d", $page["ctime"])';




Pièces jointes de la catégorie :

    
    
    
    
    
    
    
    
    
    
    
    
    
    
    Edit - History - Print - Recent Changes - Search
    Page last modified on June 23, 2006, at 06:02 PM