Benutzer:WiMu/DPL-bug/include: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
WiMu (Diskussion | Beiträge) K (+ includeonly) |
WiMu (Diskussion | Beiträge) K |
||
Zeile 38: | Zeile 38: | ||
<source lang="php"> | <source lang="php"> | ||
− | /* get text and throw away html comments, nowiki- and | + | /* get text and throw away html comments, nowiki-, pre-, and includeonly-tags */ |
$text = preg_replace('/<!--.*?-->/s','',$parser->fetchTemplate($title)); | $text = preg_replace('/<!--.*?-->/s','',$parser->fetchTemplate($title)); | ||
$text = preg_replace('/<nowiki>.*?<\/nowiki>/s','',$text); | $text = preg_replace('/<nowiki>.*?<\/nowiki>/s','',$text); | ||
$text = preg_replace('/<pre>.*?<\/pre>/s','',$text); | $text = preg_replace('/<pre>.*?<\/pre>/s','',$text); | ||
+ | $text = preg_replace('/<includeonly>.*?<\/includeonly>/s','',$text); | ||
</source> | </source> | ||
Version vom 5. Juli 2010, 11:05 Uhr
Parameter | include = {template}
makes some problems, when Wiki-syntax like {{template|foo}}
is nested within <nowiki>
or <pre>
-tags on matching pages:
- (see: Kamel:WiMu/DPL-bug/include/nowiki)
- (see: Kamel:WiMu/DPL-bug/include/pre)
- (see: Kamel:WiMu/DPL-bug/include/includeonly)
<!-- html-comments -->
seem to work as intended (see Kamel:WiMu/DPL-bug/include/html-comment)
No problems with parameter | uses
:
quick&dirty bug fix:
Throw away <nowiki>
or <pre>
-tags the way <!-- html-comments -->
are deleted. Change line 515ff of DynamicPageListInclude.php
to:
/* get text and throw away html comments, nowiki-, pre-, and includeonly-tags */
$text = preg_replace('/<!--.*?-->/s','',$parser->fetchTemplate($title));
$text = preg_replace('/<nowiki>.*?<\/nowiki>/s','',$text);
$text = preg_replace('/<pre>.*?<\/pre>/s','',$text);
$text = preg_replace('/<includeonly>.*?<\/includeonly>/s','',$text);
Works fine in my local MediaWiki, but maybe there is a better way to find template-calls than via matching regular expressions --WiMu 11:50, 5. Jul. 2010 (NNZ)
Schau mal in die Wahnsinnig Weite Wüste: http://semeb.com/dpldemo/index.php?title=Issue:Include-bug_with_nowiki-_and_pre-tags