Page List Templates

Templates for PmWiki's Page lists directive

This page contains "templates" for PmWiki's (:pagelist:) directive. The Site.LocalTemplates page can be created and used to store pagelist templates that are local to a site.

Page list template documentation

fmt=#default

The default template for pagelists when fmt= isn't specified (and note that on the PmWiki.org wiki, this template is over-ridden by the one on the Site.LocalTemplates page).

(:if false:)
[[#default]]
(:template first {=$Group}:)

:[[{=$Group}/]] /:
(:template each:)
: :[[{=$Group}/{=$Name}]]
[[#defaultend]]
(:ifend:)

(:pagelist group={$Group} fmt=#default count=6:)

fmt=#bygroup

Display pages by group/name.

(:if false:)
[[#bygroup]]
(:template first {=$Group}:)

:[[{=$Group}/]] /:
(:template each:)
: :[[{=$Group}/{=$Name}]]
[[#bygroupend]]
(:ifend:)

(:pagelist group={$Group} fmt=#bygroup count=6:)

fmt=#simple

A simple bullet list of page names.

(:if false:)
[[#simple]]
* [[{=$FullName}]]
[[#simpleend]]
(:ifend:)

(:pagelist group={$Group} fmt=#simple count=5:)

fmt=#title

A simple bullet list of page titles.

(:if false:)
[[#title]]
(:template defaults order=title:)
* [[{=$FullName}|+]]
[[#titleend]]
(:ifend:)

(:pagelist group={$Group} fmt=#title count=5:)

fmt=#titlespaced

Outputs wiki page titles with spaces between the words in the title.

(:if false:)
[[#titlespaced]]
(:template defaults order=title:)
* [[{=$FullName}|{=$Titlespaced}]]
[[#titlespacedend]]
(:ifend:)

(:pagelist group={$Group} fmt=#titlespaced count=5:)

fmt=#group

A bullet list of groups (will not work with count=...).

[[#group]]
(:template first {=$Group}:)
* [[{=$Group}/]]
[[#groupend]]

fmt=#grouphomes

An optimized bullet list of group home pages (will work with count=...), requires PmWiki 2.2.103.

(:if false:)
[[#grouphomes]]
(:template default list=grouphomes:)
* [[{=$Group}/]]
[[#grouphomesend]]
(:ifend:)

(:pagelist group=p*,s* fmt=#grouphomes count=5:)

fmt=#include

Concatenate the text of pages in the list (note, this can be an expensive operation).

[[#include]]
(:include {=$FullName} self=0:)
[[#includeend]]

fmt=#includefaq

Include just the #faq sections from pages in the list. (This can also be expensive, especially if the list includes pages that don't have the [[#faq]] anchor!)

[[#includefaq]]
!![[{=$FullName}|+]]
>>faq<<
(:include {=$FullName}#faq#faqend self=0:)
>><<
[[#includefaqend]]

fmt=#description

List pages and append the page's description if it exists. Creates dash by all names, but adding a nested loop to get rid of it causes markup problems (nested loops are not allowed).

(:if false:)
[[#description]]
* [[{=$FullName}|+]]
  - {=$Description}
[[#descriptionend]]
(:ifend:)

(:pagelist group={$Group} fmt=#description count=7:)

fmt=#simplename

Simple bullet list of page names, without the Group name.

(:if false:)
[[#simplename]]
* [[({=$Group}/){=$Name}]]
[[#simplenameend]]
(:ifend:)

(:pagelist group={$Group} fmt=#simplename count=5:)

fmt=#simplenamespaced

Simple bullet list of spaced page names, without the Group name.

(:if false:)
[[#simplenamespaced]]
* [[({=$Group}/){=$Namespaced}]]
[[#simplenamespacedend]]
(:ifend:)

(:pagelist group={$Group} fmt=#simplenamespaced count=5:)

fmt=#titlesummary

A simple bullet list of page title and summary.

(:if false:)
[[#titlesummary]]
* [[{=$FullName} | {=$Title}]] &nbsp; [-{=$:Summary}-]
[[#titlesummaryend]]
(:ifend:)

(:pagelist group=Site fmt=#titlesummary list=normal count=8:)

fmt=#count

Number of pages in a group, includes only "normal" pages

(:if false:)
[[#count]]
(:template defaults wrap=inline list=normal :)
(:template last:)
{$$PageCount}
[[#countend]]
(:ifend:)

Number of pages in the {$Group} group: (:pagelist group={$Group} fmt=#count :).

Number of pages in the {$Group} group: (:pagelist group={$Group} fmt=count :).

There are (:pagelist group=PmWiki fmt=#count wrap=html :) pages in the PmWiki group.

Number of pages in the Site group: .

Number of pages in the Site group: 0.

There are

pages in the PmWiki group.