Table of Contents
Page List
The Pagelist Plugin takes a list of wiki pages and provides a nicely formatted table with information about them. The plug-in has a number of flags that can be used to control the information and format of the page list. The user can provide a list of specific page references as can some popular helper plugins such the Blog, Discussion, Editor, Tag, Task and Dir plugins.
Syntax
Just wrap a regular unordered list of internal links with the <pagelist>
tag. You may provide specific internal page references or have plug-ins supply them as in the example below:
<pagelist&[flags]> * [[..:blog:|Blog Plugin]] * [[..:discussion:|Discussion Plugin]] * [[..:editor:|Editor Plugin]] * [[..:tag:|Tag Plugin]] * [[..:wrap|Wrap Plugin|This is shown in the description cell]] </pagelist>
[flags] | flags can be used to alter the appearance of the pagelist, flags | optional |
---|
Flags
Default flag | Alternative flag | Setting in Config Manager |
||
---|---|---|---|---|
default | table with horizontal lines | table , list or simplelist | standard DokuWiki table or list style | style |
firsthl | show the first headline | nofirsthl | show the page name | showfirsthl |
date | show the creation or last modification date | nodate | hide the date | showdate |
user | show creator or contributors | nouser | hide the user | showuser |
noheader | hide the heading row of the pagelist table | header | show the header | showheader |
nodesc | hide the description | desc | show the description (from metadata) | showdesc |
nocomments | hide the number of comments | comments | show the number of comments (if Discussion Plugin is installed) | showcomments |
notags | hide the tags | tags | show the tags (if Tag Plugin is installed) | showtags |
nosort | no sortation of pages | rsort/sort | sorts the pages (reverse) alphabetically by pagename | rsort/sort |
nodiff | no displaying of differences column | showdiff | displays the differences column with the diff icon linking to the corresponding diff page for each row | showdiff |
noimage | show image of the page | image | needs Pageimage Plugin installed. Can either be defined on page or image with same name as page will be used | image |
Example
<pagelist&header&comments> //an unordered list of pages to display// </pagelist>
In the example above, pagelist will display information about the provided pages in a table with a header line and a comments column (if the Discussion Plugin is installed). The user (or a plugin) must supply the specific pages to display in the list.
Configuration
The plugin can be configured using the DokuWiki configuration manager available in the admin menu. The settings also apply to plugins which use the helper component of the pagelist plugin, like for example the archive component of the blog plugin.
style | List style (default, table, table/list, simplelist) |
---|---|
showheader | Show table header |
showdate | Shows/hides the date column (hide, creation date, modification date) |
showuser | Shows/hides the user column (hide, creator, contributors) |
showdesc | Shows/hides a short description taken from the first paragraph of a page (hide, max. 160 characters, max. 500 characters) |
showcomments | Shows/hides comments of a page (requires the discussion plugin) |
showlinkbacks | Shows/hides linkbacks of a page (requires the linkback plugin) |
showtags | Shows/hides tags of a page (requires the tag plugin) |
sort | Sorts the pages alphabetically by pagename |
showdiff | Displays a differences column with the diff icon linking to the corresponding diff page for each row |
showimage | Shows/hides the image column (requires the Pageimage Plugin) |
Helper Plugin
You can easily use the functionality of the Pagelist Plugin in your own plugins. Here is a basic code snippet:
$pages = [ ['id' => 'wiki:dokuwiki'], ['id' => 'wiki:syntax'], ]; $pagelist = $this->loadHelper('pagelist'); if (!$pagelist) return false; // failed to load plugin $pagelist->startList(); foreach ($pages as $page){ $pagelist->addPage($page); } $renderer->doc .= $pagelist->finishList();
Since release 2017-08-24
the function startList()
has got an optional parameter to specify a CSS class for adding it to the class of the table element:
$pagelist->startList('myclass');
For more details, see How to use Pagelist in your plugin.
Bugs / Feature Requests
Please report bugs or feature requests at the Bug tracker.
Changes
- Merge pull request #161 from dokuwiki-translate/lang_update_808_17065… by Klap-in (Tuesday, January 30, 2024 09:33 AM)
- translation update by Impeck (Tuesday, January 30, 2024 01:10 AM)
- Merge pull request #160 from dokuwiki-translate/lang_update_797_17062… by Klap-in (Saturday, January 27, 2024 07:37 AM)
- translation update by alexgearbox (Friday, January 26, 2024 12:55 AM)
- Merge pull request #158 from dokuwiki-translate/lang_update_782_17043… by Klap-in (Friday, January 05, 2024 06:55 AM)
- translation update by alexgearbox (Wednesday, January 03, 2024 06:00 PM)
- Merge pull request #157 from dokuwiki-translate/lang_update_740_17007… by Klap-in (Thursday, November 23, 2023 03:07 AM)
- Merge pull request #155 from dokuwiki-translate/lang_update_712_16963… by Klap-in (Thursday, November 23, 2023 03:07 AM)
Localization
Submit translation via the translation tool: https://translate.dokuwiki.org/plugin/pagelist