我可以将 "A" 标签添加到 mediawiki wikitext 允许列表中吗?

Can I add "A" tag into mediawiki wikitext permitted list?

我们公司多年来一直使用 WordPress 托管 wiki 网站,现在我们决定将其迁移到 MediaWiki。

然而,我们 wiki 中的所有文章都不是用 wiki 文本编写的,而是原始 HTML 代码,并且有很多 <a href...>Link</a> MediaWiki 将转换为 &lt;a href...&gt;Link&lt;/a&gt;。我们有数十万篇文章,所以我认为将那些旧文章转换为 wikitext 不是一个好主意。

我尝试设置 $wgRawHtml = true 并在代码周围添加 <html></html>,但是,TOC 被破坏了(另外,在生产中使用它也不安全)。

我也测试了一些扩展,例如https://www.mediawiki.org/wiki/Extension:HTML_Tags and https://www.mediawiki.org/wiki/Extension:AllowAnchorTags,但它们都不支持<a href=...本身。

有没有更好的解决方案来匹配我的情况?谢谢。

您可以使用 https://www.mediawiki.org/wiki/Extension:Secure_HTML。它绝对支持 <a href=...,但您需要为页面的每个 HTML 块构建一个代码段。 如果你的 wiki 文本中没有 wiki 标记,你可以将整个 wiki 文本包装成一个片段 - 这样你每页只需要一个片段。

另一个解决方案是将所有 <a href=... 替换为非常有用的 https://www.mediawiki.org/wiki/Extension:Replace_Text 它应该适用于这 3 个操作:

  • <a href="替换为[
  • ">(或" target="_blank">)替换为</code></li> <li>将<code></a>"替换为]