From: Daniel Friesen Date: Sat, 5 Jul 2008 03:36:12 +0000 (+0000) Subject: New hook ParserBeforeTranscludeTemplate: X-Git-Tag: 1.31.0-rc.0~46731 X-Git-Url: http://git.cyclocoop.org//%22javascript:ModifierStyle%28%27%22.%24id.%22%27%29/%22?a=commitdiff_plain;h=e339f6147168719ab513f3550ff7b524bde1fe89;p=lhc%2Fweb%2Fwiklou.git New hook ParserBeforeTranscludeTemplate: This hook allows for modification of the title and text of a template which is being transcluded. Use of this hook will allow extensions to create features such as TransWiki for an alternative to ScaryTransclusions. --- diff --git a/RELEASE-NOTES b/RELEASE-NOTES index c5d7544ee6..cc231d9849 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -179,7 +179,10 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN * Added blank special page Special:BlankPage for benchmarking, etc. * Foreign repo file descriptions and thumbnails are now cached. * (bug 11732) Allow localisation of edit button images - +* New hook ParserBeforeTranscludeTemplate to allow extensions to modify the text + and title of a template being transcluded in a way similar to how + ParserBeforeStrip effects the page being parsed + === Bug fixes in 1.13 === * (bug 10677) Add link to the file description page on the shared repository diff --git a/docs/hooks.txt b/docs/hooks.txt index 6f76b5c4ed..65802d68ef 100644 --- a/docs/hooks.txt +++ b/docs/hooks.txt @@ -921,6 +921,12 @@ $parser: parser object $text: text being parsed $stripState: stripState used (object) +'ParserBeforeTranscludeTemplate': Allows modification of the text and title of a + template which is being transcluded +&$parser: parser object +&$text: text being transcluded +&$title: title object of the template + 'ParserBeforeTidy': called before tidy and custom tags replacements $parser: Parser object being used $text: actual text diff --git a/includes/parser/Parser.php b/includes/parser/Parser.php index f7235255ff..4e6e5649d5 100644 --- a/includes/parser/Parser.php +++ b/includes/parser/Parser.php @@ -3039,6 +3039,8 @@ class Parser // Cache miss, go to the database list( $text, $title ) = $this->fetchTemplateAndTitle( $title ); + wfRunHooks( 'ParserBeforeTranscludeTemplate', array( &$parser, &$text, &$title ) ); + if ( $text === false ) { $this->mTplDomCache[$titleText] = false; return array( false, $title );