The WikiPage class represents a MediaWiki page and its history. It encapsulates access to page information stored in the database, and allows access to properties such as page text (in Wikitext format), flags, etc.

In theory, WikiPage is supposed to be the model object for pages, while the Article class handles the business and presentation functions. If you have an Article object, you can get a WikiPage object using Article::getPage().

Creating a new WikiPage object[edit]

To instantiate WikiPage, call one of the static factory methods:

  • WikiPage::factory( $title ) - where $title is a Title instance.
  • WikiPage::newFromId( $id ) - where $id is a page id.
  • WikiPage::newFromRow( $row ) - where $row is a row fetched from the database containing all the fields listed in WikiPage::selectFields().


  • getContent( $audience ): Get the content of the latest revision, where $audience is one of:
    1. RevisionRecord::FOR_PUBLIC - to be displayed to all users
    2. RevisionRecord::FOR_THIS_USER - to be displayed to $wgUser
    3. RevisionRecord::RAW - get the text regardless of permissions
  • To get the text of the latest revision, use:
$content = $wikiPage->getContent( RevisionRecord::RAW );
$text = ContentHandler::getContentText( $content );

See for a complete lists of methods.


  • getTitle() - Get the title object of the article.

See also[edit]