On Sun, Jun 10, 2007 at 09:15:39PM +0200, Christophe David wrote: > >Essentially, a custom formatting function will generally look like: > >Hope this helps -- let me know if you need any further hints. > > Thanks a lot. I just copied your example and it works great. > > Could you please show me how to convert the following parts of a > pagelist template > > {{=$Group}/{=$Name}$:MyPageTextVariable} > > to $itemfmt = "<li> ... </li>\n";
FWIW, a much faster version of the above would be {=$:MyPageTextVariable} To create a set of list items consisting solely of $:MyPageTextVariable: foreach($matches as $m) { $ptv = PVSE(PageVar($m, '$:MyPageTextVariable')); $out .= "<li>$ptv</li>\n"; } > and how to determine in the custom function whether a PageTextVariable > in another page is defined or not. Currently, done with the ugly > (:if equal x{MyGroup/MyPage$:MyPageTextVariable} x xx :) To determine if a page variable for a page $m is set or not: $ptv = PVSE(PageVar($m, '$:MyPageTextVariable')); if ($ptv != '') { ... } Combining both of the above into a loop: foreach($matches as $m) { $ptv = PVSE(PageVar($m, '$:MyPageTextVariable')); if ($ptv != '') $out .= "<li>$ptv</li>"; } This will create a list of the values of $:MyPageTextVariable for every page in the pagelist, skipping over the pages on which $:MyPageTextVariable is not defined or has an empty value. Pm _______________________________________________ pmwiki-users mailing list pmwiki-users@pmichaud.com http://www.pmichaud.com/mailman/listinfo/pmwiki-users