当前位置

修改MediaWiki网站的HTML Title

James Qi 在 2012年8月29日 - 11:28 提交
内容摘要:MediaWiki的一个特点是页面标题与页面网址对应,这样做内部链接的时候很方便。不过在有些情况下,需要对页面标题进行一些更改,MediaWiki中就引入了{{DISPLAYTITLE:}}这样的标记......

  MediaWiki的一个特点是页面标题与页面网址对应,这样做内部链接的时候很方便。不过在有些情况下,需要对页面标题进行一些更改,MediaWiki中就引入了{{DISPLAYTITLE:}}这样的标记,使页面显示的标题与链接有所不同。

  但我们最近还希望让页面的HTML源代码中的标题也有所变化,而Wiki系统中的PageTitle(位于<h1></h1>之间)和HTMLTitle(位于<title></title>之间)是不一样的。前些天在MediaWiki官方网站找了好久也没有找到适合我们使用的插件。

  今天反复测试,终于找到了解决办法,将includes/OutputPage.php中的一段代码修改后可以实现我们希望的效果:

//jamesqi2012-8-29  $ret .= "<title>" . htmlspecialchars( $this->getHTMLTitle() ) . "</title>\n";
  $ret .= "<title>" . htmlspecialchars( $this->getPageTitle() ) ." - ".wfMsgForContent( 'pagetitle-view-mainpage' ). "</title>\n";

  前面一句被注释掉了,后面一句是我加上的。

  这样做有违Wiki网站的初衷,但我们其实是把MediaWiki作为一种CMS在使用,并没有作为多人协作的Wiki平台,所以为了更好的SEO效果,这样修改还是有必要的。

评论

-- 发自IP地址: 58.49.167.163 (位置 | 谁是)

昨天在为繁体网站(如:tw.youbianku.com)添加手机版(如:tw.m.youbianku.com)的时候,偶然发现繁体网站的HTML Title与显示Title不一样,显示Title是繁体的,但HTML Title确实简体的!我查看了搜索引擎Google的网页快照,有些页面Title是对的,有些是错的,这个问题不知道是什么时候就存在的?我怀疑是MediaWiki某次版本升级之后就一直有这个问题,直到几年后才现在被发现。
已经用上面这个办法,将繁体网站和繁体网站的手机版的includes/OutputPage.php都进行了修改,现在的HTML Title可以正常显示繁体字了。

James Qi / 祁劲松

添加新评论

Plain text

  • 不允许使用HTML标签。
  • 自动将网址与电子邮件地址转变为链接。
  • 自动断行和分段。
验证码
本问题用于测试您是否为人类访问者,避免自动垃圾发贴。
图形验证
键入显示在图片中的字符