Manuel:WikiPage.php

This page is a translated version of the page Manual:WikiPage.php and the translation is 100% complete.

La classe WikiPage représente une page MediaWiki avec son historique. Elle encapsule l'accès aux informations de la page enregistrées dans la base de données et autorise l'accès aux propriétés telles que le texte de la page (au format wikicode), aux marques, etc.

En théorie, WikiPage est supposé être l'objet du modèle pour les pages, alors que la classe Article gère les fonctions concernant les affaires et la présentation.

Accès à un objet WikiPage

  • Si vous avez un objet Article , vous pouvez obtenir un objet WikiPage en utilisant Article::getPage().
  • Utiliser RequestContext::getWikiPage() pour récupérer l'objet WikiPage du contexte actuel.

Créer un nouvel objet WikiPage

Utiliser une WikiPageFactory pour créer de nouveaux objets WikiPage.

Méthodes publiques

  • getContent( $audience ): fournit le contenu de la dernière révision, où $audience est une valeur parmi :
    1. RevisionRecord::FOR_PUBLIC - à afficher à tous les utilisateurs
    2. RevisionRecord::FOR_THIS_USER - à afficher sur $wgUser
    3. RevisionRecord::RAW - fournit le texte quelque soit les droits d'accès
  • si ContentHandler le prend en charge, vous pouvez faire quelque chose comme ce qui suit pour obtenir le texte de la dernière révision dans le slot principal :
$text = $wikiPage->getContent( RevisionRecord::RAW )->getText();
  • convertSelectType() - convertir 'fromdb', 'fromdbmaster' et 'forupdate' en constantes READ_* .
  • getActionOverrides() - comparer : ContentHandler::getActionOverrides()
  • clear() - vider l'objet.
  • clearPreparedEdit()
  • pageDataFromTitle() - rechercher un enregistrement de page correspondant à l'espace de noms et au titre de l'objet Title en utilisant une chaîne épurée du titre
  • pageDataFromId()
  • loadPageData() - charger à partir d'une source donnée, par titre
  • wasLoadedFrom() - vérifier que les données d'une page ont été chargées
  • loadFromRow() - charger un objet à partir d'une ligne de la base de données
  • exists() - vérifier qu'une page donnée existe
  • canExist()
  • hasViewableContent()
  • isNew() - vérifier que la page ne possède qu'une seule révision
  • checkTouched() - vérifier qu'une page existe et qu'elle n'est pas une redirection. Charge page_touched
  • isSamePageAs()

Accesseurs et contrôles

  • getId() - obtenir le page ID
  • getTitle() - fournit l'objet Title de l'article.
  • obtenir les données de l'objet Title :
    • getNamespace() - renvoie un entier
    • getDBkey()
    • getWikiId()
  • getLanguage() - obtenir le code de langue pour la page
  • getContentHandler() - renvoyer une instance ContentHandler à utiliser pour traiter du contenu de cette WikiPage.
  • getContentModel() - renvoyer l'identifiant du modèle de contenu de la page (voir les constantes CONTENT_MODEL_XXX).
  • getRevisionRecord() - obtenir le dernier RevisionRecord
  • getContent() - obtenir le contenu de la révision actuelle.
  • Récupère les données à partir de la table page
    • getQueryInfo() - renvoyer les tables, les champs et les conditions de jointure à sélectionner pour créer un nouvel objet de page.
    • getTouched() - obtenir le champ page_touched
    • getLinksTimestamp() - obtenir le champ page_links_updated
    • getLatest() - obtenir le champ page_latest
    • getPageIsRedirectField() - voir ci-dessous
  • getTimestamp() - récupérer l'horodatage de la dernière révision. Voir aussi setTimestamp().
  • Relatif aux utilisateurs ayant contribué :
    • getContributors() - fournir une liste des utilisateurs qui ont modifié cet article sauf pour la dernière révision
    • getUser() - obtenir l'identifiant de l'utilisateur qui a effectué la dernière révision de l'article.
    • getCreator() - obtenir l'identifiant de l'utilisateur qui a créé la page
  • getUserText()
  • getComment()
  • getMinorEdit()
  • isCountable()
  • Relatif aux catégories
    • getCategories() - obtenir la liste des catégories contenant cette page.
    • getHiddenCategories()
  • Relatif aux redirections
    • isRedirect()
    • getPageIsRedirectField() - obtenir la valeur du champ page_is_redirect de la base de données
    • followRedirect() - obtenir l'objet Title ou l'URL de redirection de cette page.
    • getRedirectURL()
  • Relating to parsing:
    • getParserOutput() - obtenir un ParserOutput pour le ParserOptions donné et l'Id de révision.
    • shouldCheckParserCache()
  • Relatif à d'éventuelles bases de données non locales
    • isLocal() - vérifier si le contenu affiché sur cette page provient de la base de données locale.
    • getWikiDisplayName()
    • getSourceURL()
  • getMutableCacheKeys()

Setters, actions de page et contrôles

  • setTimestamp()
  • Relatif aux redirections :
    • insertRedirect()
    • insertRedirectEntry()
  • doViewUpdates()
  • doPurge() - exécuter les actions pour purger une page.
  • insertOn() - insérer un nouvel enregistrement de page vide pour cet article. Doit être suivi de la création d'une révision et de l'exécution de $this->updateRevisionOn().
  • updateRevisionOn() - mettre à jour l'enregistrement de la page pour pointer une révision nouvellement enregistrée.
  • Relatif aux sections de page :
    • supportsSections()
    • replaceSectionAtRev()
  • newPageUpdater() - renvoie PageUpdater pour la création de page ou la création de nouvelles révisions de page.
  • updateParserCache() - mise à jour du cache de l'analyseur syntaxique. Probablement bientôt obsolète.
  • doSecondaryDataUpdates() - probablement bientôt obsolète.
  • doUpdateRestrictions() - mettre à jour le champ de restriction de l'article et laisser une entrée dans le journal. Ceci est valable pour la protection des pages existantes ainsi que pour celles qui n'existent pas.
  • getCurrentUpdate() - obtenir l'état d'une mise à jour en cours, un peu avant ou tout juste après son enregistrement dans la base de données (à partir de la version 1.38). A éviter généralement.
  • Relatif à la protection de page :
    • insertNullProtectionRevision() - insérer une nouvelle révision nulle pour cette page.
    • protectDescription() - construire la description pour servir de commentaire à l'édition.
    • protectDescriptionLog() - construire la description pour servir de commentaire à l'entrée du journal.
  • lockAndGetLatest() - vérrouiller la ligne de la page pour ce titre, cet espace de noms et cet Id et renvoyer page_latest (ou 0).
  • getAutoDeleteReason() - génère automatiquement un motif de suppression
  • updateCategoryCounts() - ne doit être appelé qu'à partir de mises à jour ou de tâches différées afin d'éviter les étranglements.
  • toPageRecord() - obtenir la page représentée par cette WikiPage en tant que PageStoreRecord.
  • méthodes magiques : __clone(), __wakeup(), __toString()

Méthodes assimilées aux accroches

  • onArticleCreate(), onArticleDelete() et onArticleEdit()

Méthodes obsolètes

  • factory(), newFromID() et newFromRow() - méthodes pour créer un objet WikiPage - sont devenues obsolètes en faveur des méthodes fournies par la WikiPageFactory.
  • getRedirectTarget()
  • replaceSectionContent()
  • checkFlags()
  • doUserEditContent()
  • doEditUpdates()
  • doDeleteArticleReal()
  • doDeleteArticleBatched()
  • doDeleteUpdates()
  • getDeletionUpdates()
  • hasDifferencesOutsideMainSlot()
  • prepareContentForEdit() - préparer le contenu à sauvegarder.
  • isBatchedDelete() - vérifie si la suppression de cette page peut être faite à l'aide d'un traitement par lot. Voir maintenant DeletePage::isBatchedDelete().

Voir https://doc.wikimedia.org/mediawiki-core/master/php/classWikiPage.html pour la liste complète des méthodes.

Voir aussi