Christopher Cox writes:
Let's say I included MyIncludedGroup.MyIncludedPage into a page called ThisGroup.ThisName. I have some php and when it is processing ThisGroup.ThisName, I can easily see that Group=ThisGroup and Name=ThisName using PageVar or even FmtPageName to get at the Group and Name.. but that always seems to give me the page being viewed and not the included page.

Is there a way to do that? It's like there's a way to control the context somehow for markup found in the included page so that it can know where it came from.

I guess I want the type of {$Group} (vs. {*$Group}) behavior you have when using page markup... but I want that somehow for php custom markup I've written. Possible??

When a wikipage is included with (:include:) its fulltext or section text is just inserted in the viewed page, and PmWiki forgets that it came from a different page. With two ecxeptions: the markup {$SomeVariable} is rewritten to {OtherPage$SomeVariable} in order to retain the context and the difference between {$Group} and {*$Group}, and [[links]] are rewritten to [[OtherGroup/links]]. This is controlled by the array $QualifyPatterns, and you could add your own patterns if you need -- see how they are set in scripts/stdmarkup.php.

I don't know your recipe, but I suppose you could have something like this:

 $QualifyPatterns['/\\(:mydirective:\\)/e'] =
   '"(:mydirective $group.$name:)"';

And let your recipe deal differently with (:mydirective:) and (:mydirective Group.Page:).

Petko


_______________________________________________
pmwiki-users mailing list
[email protected]
http://www.pmichaud.com/mailman/listinfo/pmwiki-users

Reply via email to