Manual:$wgFragmentMode/zh

From Linux Web Expert

<translate> Output</translate>: $wgFragmentMode
决定章节 ID 的编码方式
<translate> Introduced in version:</translate>1.30.0 (Gerrit change 362326; git #Id304010)
<translate> Removed in version:</translate><translate> still in use</translate>
<translate> Allowed values:</translate>(数组)
<translate> Default value:</translate>[ 'html5', 'legacy', ] (1.37+)

[ 'legacy', 'html5' ] (1.31-1.36)

[ 'legacy' ] (1.30)

该设置选项决定章节 ID 的编码方式

详情

该选项应为一个数组,此数组可以包含 1 或 2 个元素,这些元素应该是下列字符串的其中一个:

  • 'html5' - 该值指定编码方式为具有最小转义需求的现代 HTML5 样式编码。它允许在许多浏览器的地址栏中显示 Unicode 字符(如中文)。
  • 'legacy' - 该值指定编码方式为原有的 MediaWiki 格式的编码。例如 手紙 编码为 .E6.89.8B.E7.B4.99
  • 'html5-legacy' 该值指定编码方式为被废弃$wgExperimentalHtmlIds 模式。除了从该模式迁移之外,请勿将其用于任何其他用途(请参阅下文)。

该数组第 1 个元素指定编码 ID 的主要模式。 这是用户会在点击章节链接(如 [[#internal link]])时会在地址栏看到的编码方式。

可选的第 2 个元素指定一个兼容模式,在迁移时很有用。 如果第 2 元素被指定,MediaWiki会在章节标题里添加一个空的,id 为此元素指定的编码内容的 ‎<span> 元素,这样使用以前的编码方式的链接仍然可以使用。

例如:你想要把你的 Wiki 的编码方式从 'legacy' 迁移为 'html5'。 第一步,设置该选项为 [ 'legacy', 'html5' ] 。 过一段时间,当所有的缓存(服务器缓存、HTTP、等)都只包含使用该选项生成的页面后,调整该选项为[ 'html5', 'legacy' ]。 这会导致所有的内部链接会使用新的编码方式生成,同时旧的编码方式生成的链接(包括外部网站的链接和内部被缓存的链接)都会继续工作。 在很长的一段时间后,你可以放弃向后兼容性并将该选项设置为 [ 'html5' ] 。 毕竟,这么长时间过去了页面几乎都会被编辑,而编辑后的页面由于章节标题可能会被修改,无论使用何种编码方式都会导致久未更新的外部网站链接的指向特定章节的效果失效。


参见