00972: Page text variable linking for Category (or other Groups)

Summary: Page text variable linking for Category (or other Groups)
Created: 2007-09-08 22:58
Status: Suspended - implement as cookbook
Category: Feature
From: Pico
Priority: 43

Description: Extend the PTV rules to automatically create links to pages in the Category group (and possibly for other specified groups) so that:

Category: Foo, Bar

is rendered as equivalent to:

Category: [[Category/Foo]], [[Category/Bar]]

These PTV links should be applied selectively; the proposal is not to turn all PTV values into links. Some possible ideas for determining which PTV values are rendered as links include the following:

  1. Only PTVs where the PTV name matches the string for the category group (the value of the $CategoryGroup variable)
  2. PTVs whose names match the values of an array that can be specified in the config file.
  3. PTVs whose names match those of existing groups
  4. PTVs that authors identify through special markup, for example, markup that identifies the PTV name string as a group:
    • ~Group: Foo, Bar or
    • [[Group(.)]]: Foo, Bar


In the current betas page text variables ("PTV") can be used in place of category link markup to drive category pagelists as follows:

1. Create a PTV in SomePage:

Category: Foo, Bar

2. Add a pagelist to Category.GroupFooter that calls that PTV:

(:pagelist $:Category=*{$Name}*:)

3. Browse the pages Category.Foo and Category.Bar to see links to SomePage

Using PTVs in this manner can drive similar pagelists on other groups in addition to Category (e.g. Tags, Players, Locations).

The limitation with this PTV approach is that links are not automatically rendered for the values of PTVs that are displayed on SomePage.

I think this should be implemented as a cookbook recipe rather than in the core. See $ROEPatterns. --Petko March 05, 2010, at 03:18 PM