首先,我同时使用PHP 5.3.5,MySQL 5.5.8和Apache 2.2.17设置了MW 1.16和1.17。如何在保存到数据库之前用MediaWiki中的自定义标记替换内容?
我写了一个简单的$ wgExtensionFunction,它现在什么都不做。
$wgExtensionFunctions[] = "wfTestExtension";
function wfTestExtension() { global $wgParser;
$wgParser->setHook("myTag", "renderTest");
}
function renderTest($input) {
return $input;
}
我想要做的是,如果我在添加或编辑表单中输入<myTag>Blah blah blah</myTag>
,我希望能够改变内部MyTag的内容之前将其保存到数据库中。我应该使用什么机制?我假设挂钩?例如,与ArticleSave钩,在$文本VAR已经有<myTag>
剥离出来,所以没有试图解析字符串并搞清楚它是什么,原来是里面的<myTag>
我已经花了几个小时的方式试图在谷歌上找到一些东西,但我几乎放弃了。任何建议都将不胜感激。
干杯。
这就是我一直在尝试的。函数的定义如下: – Kirk 2011-03-28 01:58:14
function fnMyHook(&$ parser,&$ text,&$ strip_state){...} - 但是,$ text并没有给我提交的正文。相反,它给我$ 1 - {{SITENAME}} $ 1 - {{SITENAME}} {{SITENAME}} {{SITENAME}}({{CONTENTLANGUAGE}}此页面已被浏览过{{PLURAL:68 | once | 68次}}。关于{{SITENAME}}关于{{SITENAME}} – Kirk 2011-03-28 01:59:25