Jump to content

手册:Article.php

From mediawiki.org
This page is a translated version of the page Manual:Article.php and the translation is 97% complete.
Outdated translations are marked like this.

Article类处理MediaWiki页面及其历史记录的呈现和交互。它与WikiPage 类密切相关,后者为页面提供模型对象。

例如,该文件包含一个用于查看页面的函数view(),从ViewAction.php调用(另一个版本在RawAction.php中)。 此函数使用函数getContent()loadContent()fetchContent()从数据库获取页面的wikitext$mContent,并将其分配给$text。 之后,它调用函数outputWikiText()(已弃用)来处理$text

警告 警告: 文章是一个前端UI类而不是用于与页面内容交互的API。为此,请使用WikiPage

创建新的条目对象

要实例化Article,请调用静态工厂方法之一或使用构造函数:

  • Article::newFromId( $id ) - 其中,$id是文章ID(与page_id 相同)。
  • Article::newFromTitle( Title $title, IContextSource $context ) - 为给定标题创建相应类的文章对象。
  • Article::newFromWikiPage( WikiPage $page, IContextSource $context ) - 为给定页创建相应类的文章对象。
  • new Article( Title $title ) - 从给定标题创建一个文章对象。

方法

  • getContent() ((在版本1.29移除); superseded by WikiPage::getContent() ) - 获取此修订版的文本。这个功能有副作用。如果您只需要真实的修订文本(如果有),请不要使用此功能。
  • getContext() (1.18+) - 获取在其中执行此项目的上下文。
  • getOldID() - 获取要显示的项目的旧版本,如果是当前修订,则为0。
  • getPage() (1.19+) - 获取此实例的Wikipage对象。
  • getParserOptions() - 获取适合呈现主项目wikitext的解析器选项
  • getParserOutput([$oldid, User $user]) - 一种轻量级方法,用于获取页面的解析器输出,检查解析器缓存等。它没有考虑Wikipage::view()被迫考虑的大部分内容。
  • getRevIdFetched() - 获取页面视图上使用的修订版ID。
  • getRevisionFetched() (1.19+) - 根据请求参数获取获取的修订对象,如果失败则为空。
  • getRobotPolicy(string $action, ParserOutput $pOutput) - 获取要用于当前视图的自动机策略。$action是包含action=Get参数和$pOutput的字符串。
  • getTitle() - 获取与此页关联的标题
  • isCurrent() - 如果当前引用的修订是对此页面的当前编辑(并且存在),则返回True。
  • isFileCacheable() - 如果页面可以缓存,则返回True。
  • view() - 此方法处理查看页面的(默认)操作。Actions(如‘VIEW’、‘REVERT’、‘DELETE’等)由Action子类处理。ViewAction的show()方法调用Article::view()来执行实际工作。

有关方法的完整列表,请参阅此处(MediaWiki开发文档)

从该文件调用的钩子列在Category:MediaWiki hooks included in Article.php 类别中。

参见