我正在为MediaWiki设计一个皮肤(版本1.15)。我需要包括标题的网页被调用到皮肤。我的问题是,如何使用php以务实的方式获得标题?我试着查看MediaWiki的文档,但是我找不到我正在工作的MediaWiki版本的任何东西。
发布于 2014-08-26 23:37:53
获取当前页面标题的标准方法是获取RequestContext或任何IContextSource类,在其上调用getTitle()以获取标题对象,然后调用其getter方法之一,如getPrefixedText()。
皮肤类本身是皮肤的正常上下文源,因此在皮肤代码中,如下所示:
$title = $this->getTitle();
echo htmlspecialchars( $title->getPrefixedText() );(实际上,皮肤类还提供了另一个名为getRelevantTitle()的方法,您可能希望使用它来代替getTitle()。主要/唯一的区别是,在特定wiki页面上的某些特殊页面(如Special:MovePage )上,“相关”标题将是正在执行的页面的标题,而不是特定页面本身的标题。)
请注意,许多皮肤为当前页面标题之类的内容定义了自己的快捷方式。例如,在矢量皮肤模板码中,通过调用$this->html( 'title' )来打印当前页面标题。如果您的新皮肤是基于这些现有的皮肤之一,您可能更喜欢使用相同的快捷方式。
https://stackoverflow.com/questions/25516562
复制相似问题