[pmwiki-users-de] Automatic wikitrails generation for RSS possible?

Thomas Tempelmann tt at tempel.org
Mi Jun 4 09:24:11 CDT 2008


On 28.05.2008 1:06 Uhr, "Michael Engelke" <PmWiki at MEngelke.de> wrote:

> Nehmen wir an, in der Gruppe "Main" soll NUR für die Seite "FooBar" eine
> RecentChanges Seite erstellt werden:
> Dann schreiben wir in der Config.php:
> 
>  if(preg_match('/^(Main[\.|\/]FooBar)$/',$pagename))
>   $RecentChangesFmt['Main.FooBar-RecentChanges'] = '* $CurrentTime  . .
> .  $[by] $AuthorLink: [=$ChangeSummary=]';

Gut, das klappt soweit (nur "$AuthorLink" zeigt ein "?", aber da ich selbst
der einzige Autor bin, laß ich das eh weg).

Nun würde ich gern die regex so ändern, daß sie alle üblichen Page-Namen
"matcht" und dann den Match in der Ausgabe verwendet. Also probierte ich
das:

if(preg_match('/^(Main[\.|\/]([a-zA-Z0-9]+))$/',$pagename, $matches)) {
  $RecentChangesFmt['Main.Foobar'] = '* $matches[1]';
}

Hier versuche ich, mir die Matches von der regex geben zu lassen und gebe
sie dann probehalber in der Change-Zeile aus. Leider bekomme ich statt einem
Match-Text nur "$matches[1]" direkt angezeigt. Anfängerfehler Ich muß
zugeben, daß ich nicht so fit in PHP bin.?

Weiterhin: Wie bekomme ich den Match-String so hin, daß er zwar a-z und auch
"-" annimmt, aber nicht "-RecentChanges"? Ich kenne nur "[^ ... ]" als
non-match, aber das geht ja nur bei einzelnen Zeichen, nicht?

Thomas