[pmwiki-users] Problem with Flexi Skin and FlexiTitle

Petko Yotov 5ko at 5ko.fr
Wed Aug 12 04:46:40 CDT 2015

On 2015-08-12 10:07, Charles Richmond wrote:
> Recently I have inherited the support of a PMWiki.  I upgraded the
> wiki from pmwiki-2.1.27 to pmwiki-2.2.78   I also upgraded the
> version of flexi skin to the latest release of the skin.  I've made
> the ".css" file and the ".tmpl" file parallel the originals for this
> wiki in an attempt to keep things looking the same.
> Originally, the wiki used the name of the file that contained a
> page...  to create the title of each page.  For example, the home
> page had the title "Main/HomePage" since the file containing the page
> was "Main.HomePage" in the wiki.d directory. With the upgraded wiki,
> *every* page has the title at the top of "Site/FlexiTitle".  This is
> more than a mere inconvenience, because the  page title is used when
> one does an [AdminEdit] or [Hist]... and this takes you to some weird
> FlexiTitle page instead of letting you edit the desired wiki page.
> If anyone can tell me how to fix this, I'd be very grateful!  If you
> can just tell me exactly *where* I can learn how to fix it, I'd be
> delighted!!!

There are two major changes from version 2.1.27 to the latest version.

PageVariables written in a wiki page like {$FullName} or {*$FullName} 
are used in templates and in the interface sections to point to the page 
you are looking at, even when that page has incorporated templates or 
portions of other pages.

Previously, both {$FullName} and {*$FullName} always related to the page 
at which you were looking. This was programmed to change in 2.2.0 but 
changed later, in 2.2.10, so that now {$FullName} refers to the template 
page, and {*$FullName} refers to the browsed page.

So, when you upgrade, you should find any PageVariables and if they 
relate to the template page, use {$FullName}; if they refer to the 
browsed page, use {*$FullName}.

Notably, check your pages Site.PageActions, Site.EditForm, 
Site.PageNotFound, SideBar pages, and PageLists in sidebars, headers, 
and footers. Edit those pages through the wiki interface, don't edit the 
files in wiki.d on the disk. Check also config.php or other files in the 
pmwiki/local directory for custom definitions of $GroupHeaderFmt and 

Specifically, the links to edit the page or view the history are usually 
in the template [[Site.PageActions]] but your skin may use a custom 
template, and it probably is the page that opens [[Site.FlexiTitle]]. So 
edit this page and insert asterisks like {*$FullName}. You should 
additionally check the pages Site.FlexiTop Site.FlexiBottom 
Site.FlexiLeft Site.FlexiRight Site.FlexiHeader Site.FlexiFooter if they 
exist for any PageVariables.

Note: there are also PageTextVariables looking like {$:Variable} and 
{*$:Variable}, they function in a similar manner, use an asterisk if 
they should refer to the browsed page and not to the template.

The second major change is how links in global sidebars, headers and 
footers work. Previously, a link in Site.SideBar like [[Home Page]] 
would link to a CurrentGroup.HomePage in the current group. When you 
open a page in another group, the same link would point to 
OtherGroup.HomePage, and this ambiguity caused difficulties. Now, the 
same link points to [[Site.HomePage]], and if you want a dynamic link, 
use a PageVariable like:

   [[{*$Group}.HomePage|Home page]]

Version 2.2 was an important upgrade from 2.1 and there are a few other 
changes that may concern you. See the page


specifically the sections "Upgrading from version 2.1.27 to 2.2.0" and 
"Upgrading from version 2.2.0 to the latest version".

If you have any difficulty, don't hesitate to ask.


Change log     :  http://www.pmwiki.org/wiki/PmWiki/ChangeLog
Release notes  :  http://www.pmwiki.org/wiki/PmWiki/ReleaseNotes
If you upgrade :  http://www.pmwiki.org/wiki/PmWiki/Upgrades

If this message helped you and saved you time, feel free to make
a small contribution: ♥ http://5ko.fr/donate-ml (mailing list).

More information about the pmwiki-users mailing list