如何编写将直接修改wiki文本的扩展,用于mediawiki 1.16? 免费的网络主机只有一个旧版本的PHP,所以我无法安装新版本的mediawiki。修改Mediawiki中的Wikitext,如preSaveTransform
preSaveTransform可以将签名(~~~~)更改为其他wiki文本。
当我写一个解析器扩展,到目前为止,我只知道让“{{#示例:你好|喜}}”来显示为“参数1你好,是和参数2”,但不能改变wikitext的直接的。我看到$ wikiPage-> doEditContent($ new_content,$ edit_summary,$ flags);我看到$ wikiPage-> doEditContent($ new_content,$ edit_summary,$ flags);我看到$ wikiPage-> doEditContent($ new_content,$ edit_summary,$ flags);似乎可以这样做,但不幸的是1.20版+
更新: 发现 “$物品─>的doEdit($ NEW_TEXT,$ edit_summary,$标志);” 在https://git.wikimedia.org/blob/mediawiki%2Fextensions%2FReplaceText/62ec35b6c0d16419e9893c3a78b4d04076024ea2/ReplaceTextJob.php
更新: 在编写解析器(或标记)扩展时找到文章标题的方法: $ article = new Article($ parser-> getTitle(),0); https://www.mediawiki.org/wiki/Manual:$ wgTitle
你曾经弄清楚如何做到这一点? – user606723