Recent Changes - Search:

CZjfaD , [url=http://nnredzsskgao.com/]nnredzsskgao[/url], [link=http://orsiupreszzr.com/]orsiupreszzr[/link], http://ajihppvvwlic.com/

Page-specific Variables

PmWiki.PageVariables History

Hide minor edits - Show changes to output

March 17, 2010, at 05:35 AM EST by MK Jain -
Changed lines 1-75 from:
PmwK33 <a href="http://gcecfdyrhsly.com/">gcecfdyrhsly</a>, [url=http://kcljxzjicjco.com/]kcljxzjicjco[/url], [link=http://jqkctoeiikfj.com/]jqkctoeiikfj[/link], http://fzywizjqmons.com/
to:
%audience% authors (intermediate)
(:title Page-specific Variables:)
(:description Documentation for "variables" that are associated with pages. :)
[[#desc]]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 "{$Group}".

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


!! Default page variables

The page variables defined for PmWiki are:

->[@{$Group}@] - page's group name, as in "`{$Group}"
->[@{$Groupspaced}@] - spaced group name, as in "{$Groupspaced}"
->[@{$DefaultGroup}@] - default group name, as in "{$DefaultGroup}"
->[@{$SiteGroup}@] - default group name for e.g. RecentChanges, as in "{$SiteGroup}"
->[@{$Name}@] - page name, as in "`{$Name}"
->[@{$Namespaced}@] - spaced page name, as in "{$Namespaced}"
->[@{$DefaultName}@] - name of default page, as in "`{$DefaultName}"
->[@{$FullName}@] - page's full name, as in "`{$FullName}"
->[@{$Title}@] - page title (may differ from Name), as in "{$Title}"
->[@{$Titlespaced}@] - title/spaced page name, as in "{$Titlespaced}"
->[@{$Description}@] - page's description from the [@(:description:)@] markup, as in "{$Description}"

->[@{$LastModified}@] - date page was edited, as in "{$LastModified}"
->[@{$LastModifiedBy}@] - page's last editor, as in "{$LastModifiedBy}"
->[@{$LastModifiedHost}@] - IP of page's last editor, as in "{$LastModifiedHost}"
->[@{$LastModifiedSummary}@] - Summary from last edit, as in "{$LastModifiedSummary}"
-->%note% 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 "{$PageUrl}"
->[@{$Action}@] - page's url action argument, as in "{$Action}"

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 "{$Author}"
->[@{$AuthId}@] - current authenticated id, as in "{$AuthId}" %red%Please note the lower case 'd'. [@{$AuthID}@] returns nothing

->[@{$Version}@] - PmWiki version, as in "{$Version}"
->[@{$VersionNum}@] - The internal version number, as in "{$VersionNum}"
->[@{$ScriptUrl}@] - The url to the pmwiki script, as in "{$ScriptUrl}"


!! 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]] &mdash; about variables internal to PmWiki.
* [[PmWiki.MarkupMasterIndex]] &mdash; complete list of PmWiki markups.

%trail% <<|[[Documentation Index]]|>>
>>faq<< [[#faq]]

Q:Is there a variable like $LastModified, but which shows me the creation time?
A: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"])';@]
March 16, 2010, at 03:35 PM EST by qbcrxttl - hNohCptxtRHMGmyJ
Changed lines 1-75 from:
%audience% authors (intermediate)
(:title Page-specific Variables:)
(:description Documentation for "variables" that are associated with pages. :)
[[#desc]]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 "{$Group}".

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


!! Default page variables

The page variables defined for PmWiki are:

->[@{$Group}@] - page's group name, as in "`{$Group}"
->[@{$Groupspaced}@] - spaced group name, as in "{$Groupspaced}"
->[@{$DefaultGroup}@] - default group name, as in "{$DefaultGroup}"
->[@{$SiteGroup}@] - default group name for e.g. RecentChanges, as in "{$SiteGroup}"
->[@{$Name}@] - page name, as in "`{$Name}"
->[@{$Namespaced}@] - spaced page name, as in "{$Namespaced}"
->[@{$DefaultName}@] - name of default page, as in "`{$DefaultName}"
->[@{$FullName}@] - page's full name, as in "`{$FullName}"
->[@{$Title}@] - page title (may differ from Name), as in "{$Title}"
->[@{$Titlespaced}@] - title/spaced page name, as in "{$Titlespaced}"
->[@{$Description}@] - page's description from the [@(:description:)@] markup, as in "{$Description}"

->[@{$LastModified}@] - date page was edited, as in "{$LastModified}"
->[@{$LastModifiedBy}@] - page's last editor, as in "{$LastModifiedBy}"
->[@{$LastModifiedHost}@] - IP of page's last editor, as in "{$LastModifiedHost}"
->[@{$LastModifiedSummary}@] - Summary from last edit, as in "{$LastModifiedSummary}"
-->%note% 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 "{$PageUrl}"
->[@{$Action}@] - page's url action argument, as in "{$Action}"

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 "{$Author}"
->[@{$AuthId}@] - current authenticated id, as in "{$AuthId}" %red%Please note the lower case 'd'. [@{$AuthID}@] returns nothing

->[@{$Version}@] - PmWiki version, as in "{$Version}"
->[@{$VersionNum}@] - The internal version number, as in "{$VersionNum}"
->[@{$ScriptUrl}@] - The url to the pmwiki script, as in "{$ScriptUrl}"


!! 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]] &mdash; about variables internal to PmWiki.
* [[PmWiki.MarkupMasterIndex]] &mdash; complete list of PmWiki markups.

%trail% <<|[[Documentation Index]]|>>
>>faq<< [[#faq]]

Q:Is there a variable like $LastModified, but which shows me the creation time?
A: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"])';@]
to:
PmwK33 <a href="http://gcecfdyrhsly.com/">gcecfdyrhsly</a>, [url=http://kcljxzjicjco.com/]kcljxzjicjco[/url], [link=http://jqkctoeiikfj.com/]jqkctoeiikfj[/link], http://fzywizjqmons.com/
Edit - History - Print - Recent Changes - Search
Page last modified on March 17, 2010, at 05:35 AM EST