Manuel:Title.php

This page is a translated version of the page Manual:Title.php and the translation is 29% complete.
Outdated translations are marked like this.

Before 1.40:

La classe Title du logiciel MediaWiki implemente les interfaces $3 et $4.

  • Title implements the following interfaces: LinkTarget , PageIdentity , IDBAccessObject
  • La classe est instanciée avec l'un de ces formats.
  • Une fois instancié, le titre peut être récupéré dans d'autres formats ou interrogé pour avoir ses attributs. Une fois instancié, les autres méthodes non statiques des assesseurs peuvent être utilisées telles que getText(), getDBKey(), getNamespace(), etc. Beaucoup de ces fonctions sont utilisées par Manuel:CoreParserFunctions.php pour générer les mots magiques.
  • $1 est prévu pour être une classe de valeur non mutable[1][2]

Retrieval

Methods for accessing an instance of Title include :

Public methods

Instantiation methods

Pour instancier Title, appelez l'une des méthodes statiques de la fabrique :

  • Title::newFromDBKey( $key )
  • Title::newFromID( ($id, $flags=0) ). Note that an alternative method, Title::newFromIDs( $ids ), is deprecated in favour of using a PageStore QueryBuilder.
  • Title::newFromText( $text, $defaultNamespace=NS_MAIN )
  • Title::newFromURL( $url ) - Ce n'est pas la fonction que vous désirez. Utilisez Title::newFromText().
  • Title::makeTitleSafe( $ns, $title, $fragment= '', $interwiki= '') - Crée un nouvel objet Title à partir d'un index d'espace de noms et d'une clé de base de données. Retourne null en cas d'erreur.
  • Title::newFromRow( $row )
  • Title::newMainPage() - create a new Title for the Main Page.

Exemple

Pour vérifier et voir qu'une page donnée existe déjà :

$titleObject = Title::newFromText( 'Talk:Your desired title here' );
if ( !$titleObject->exists() ) echo "There is no page with that name.";

Créez un nouvel objet Title à partir du texte, tel qu'on pourrait le trouver dans un lien. Décodez toutes les entités HTML du texte. Sont acceptés : les espaces, les préfixes et le ':' initial qui identifie l'espace de noms principal. Notez que si la page n'existe pas, ceci ne va pas la créer. Voir pour cela Manuel:Article.php .

Relating to page titles

  • getDBKey() - Fournit la partie principale (c'est à dire le titre sans l'espace de noms) avec les caractères souligné '_'.
  • getText() - Fournit la forme textuelle (espaces et pas les soulignés '_') de la partie principale, c'est à dire le titre sans l'espace de noms, mais avec les slashes et ce qu'il y a après. Voir le mot magique {{PAGENAME }}.
  • Prefixed with namespace and interwiki prefixes, if any:
    • getPrefixedDBkey() - Fournit la forme préfixée de la clé de la base de données avec les caractères soulignés '_'.
    • getPrefixedText() - Fournit le titre préfixé avec les espaces. Ceci est la forme généralement utilisée pour l'affichage. Voir le mot magique {{FULLPAGENAME }}.
      • __toString() - return a string representation of the current title.
    • getFullText() - Fournit le titre préfixé avec des espaces, avec tout fragment (partie commençant avec '#').
  • getRootText() - get the root page name text without a namespace, i.e. the leftmost part before any slashes.
  • getRootTitle() - get the root page name title, i.e. the leftmost part before any slashes.
  • getBaseText() - Fournit le nom de base de la page, c'est à dire la partie la plus à gauche, hors espace de noms, et jusqu'au premier slash (s'il y en a), sans convertir les espaces en soulignés '_' . Voir les mots magiques {{BASEPAGENAME }} et {{BASEPAGENAMEE }}.
  • getBaseTitle() - get the base page name title, i.e. the part before the subpage name.

Relating to page titles (URL-encoded)

URL-encoded titles, not actual URLs:

  • getPrefixedUrl() - Fournit une orme encodée d'URL pour le titre (pas l'URL actuelle) incluant le préfixe innterwiki. Voir le mot magique {{FULLPAGENAMEE }}.
  • getPartialURL() - Fournit la forme encodée d'URL pour la partie principale. Voir le mot magique {{PAGENAMEE }}.
  • getSubpageUrlForm() - Fournit une forme encodée d'URL pour le texte de la sous-page. Voir le mot magique {{SUBPAGENAMEE }}.

Relating to page URLs

  • getFullURL() - Fournit une URL réelle pointant vers ce titre , sous la forme d'un lien interwiki et d'un fragment.
  • getFullUrlForRedirect()
  • getLocalURL() - Fournit une URL sans fragment ni nom de serveur.
  • getLinkURL()
  • getInternalURL()
  • getCanonicalURL() - get the URL for a canonical link, for use in things like IRC and e-mail notifications. Uses $wgCanonicalServer and the GetCanonicalURL hook.
  • getEditURL() - get the edit URL (with action=edit) for this Title

Checking page titles

  • equals() - compare by checking if the namespace prefix, title text and interwiki prefix are the same.
  • isSameLinkAs() - similar to equals(), but additionally compares the fragment part. See also LinkTarget::isSameLinkAs() .

Relating to page title fragments

  • getFragment() - Fournit le fragment du titre Title (c'est à dire le morceau qui suit le '#') sous forme textuelle.
  • hasFragment()
  • getFragmentForURL()
  • setFragment()
  • createFragmentTarget() - creates a new Title for a different fragment of the same page.

Relating to namespaces

  • getNamespace() - Fournit l'index de l'espace de noms. Voir {{NAMESPACENUMBER }}.
  • getNamespaceKey() - generate strings used for xml id names in monobook tags.

For other options, see NamespaceInfo instead.

Relating to talk pages

  • getTalkPageIfDefined() - Fournit un objet Title associé à la page de discussion de cet article. Voir $1 et $2. See {{TALKPAGENAME }} and {{TALKPAGENAMEE }}. getTalkPage() is deprecated since 1.34 (in favour of getTalkPageIfDefined).
  • isTalkPage() - check current page
  • getTalkNsText() - Fournit le texte de l'espace de noms de la page de discussion. Voir les mots magiques {{TALKSPACE }} et {{TALKSPACEE }}.
  • getSubjectNsText() - Fournit le texte de l'espace de noms de la page du sujet (plutôt que celui de la page de discussion). Voir les mots magiques {{SUBJECTSPACE }} et {{SUBJECTSPACEE }}.
  • getSubjectPage() - Fournit un objet Title associé à la page du sujet de cette page de discussion. Voir le mot magique $1. See also the magic word {{SUBJECTPAGENAME }}.

Relating to categories

  • getParentCategories() - get categories to which the current Title belongs.
  • getParentCategoryTree() - get a tree of parent categories.
  • getCategorySortkey() - returns the raw sort key to be used for categories, with the specified prefix. This will be fed to Collation::getSortKey() to get a binary sortkey that can be used for actual sorting.
  • canUseNoindex() - whether the magic words __INDEX__ and __NOINDEX__ function for this page.

Relating to redirects

  • isRedirect() - check if the article is a redirect page
  • getRedirectsHere() - get all extant redirects to the current Title.
  • isValidRedirectTarget() - check if the current Title is a valid redirect target.
  • isSingleRevRedirect() - locks the page row and check if this page is single revision redirect.

Relating to subpages

  • getSubpage() - get the title for a subpage of the current page.
  • getSubpageText() - Fournit le nom de la sous-page de plus bas niveau, c'est à dire la partie la plus à droite après le dernier slash. Voir le mot magique {{SUBPAGENAME }}.
  • hasSubpages() - check if the current page has subpages.
  • getSubpages() - get all subpages of this page.
  • isSubpageOf() - check if the current title is a subpage of another title.
  • See also: getSubpageUrlForm().

Relating to incoming and outgoing links

Handle with care:

  • getLinksTo
  • getTemplateLinksTo()
  • getLinksFrom()
  • getTemplateLinksFrom()
  • getBrokenLinksFrom()

Relating to page language

  • getPageLanguage() - get the language in which the content of this page is written in wikitext. Defaults to content language, but in certain cases it can be e.g. $wgLang (such as special pages, which are in the user language).
  • getPageViewLanguage() - get the language in which the content of this page is written when viewed by user. Defaults to content language, but in certain cases it can be e.g. $wgLang (such as special pages, which are in the user language). Will be deprecated in 1.42 in favour of ParserOutput::getLanguage and see also OutputPage::getContLangForJS .

Relating to page revisions , etc.

  • exists() - check if page exists
  • isNewPage() - check if the current page is new.
  • purgeExpiredRestrictions()
  • estimateRevisionCount() - get the approximate revision count of the current page.
  • getDeletedEditsCount - count archived revisions.
  • hasDeletedEdits() - check if there is a version of the current page in the deletion archive.
  • getEditNotices() - get a list of rendered edit notices for this page.

Relating to page_touched/timestamps :

  • invalidateCache() - updates page_touched for the current page. It is called from LinksUpdate.php .
  • touchLinks() - update page_touched timestamps and send CDN purge messages for pages linking to this title. May be sent to the job queue depending on the number of links. Typically called on create and delete.
  • getTouched() - get the latest touched timestamp

Relating to viewability

  • isAlwaysKnown() - semi-deprecated for public use
  • isKnown() - check if the current Title refers to a page that can (or might) be meaningfully viewed?
  • hasSourceText() - check if the current page has any source text.
  • getDefaultMessageText() - Get the default (plain) message contents for an page that overrides an interface message key.

Link cache, page IDs, etc.

  • getArticleID() - Fournit l'ID de l'article pour le titre correspondant à partir du cache lié, en l'ajoutant si nécessaire. Pour les articles « internes » , revoie le champ page_id si l'article existe, sinon retourne 0. Retourne 0 pour tous les articles externes. Les IDs de toutes les instances Title créées durant une requête sont mis en cache, afin d'être recherchés rapidement lors de la génération du wikicode ayant de multiples liens internes.
  • resetArticleID() - inject a page ID, reset DB-loaded fields, and clear the link cache for the current Title.
  • clearCaches() - clear link cache as well as Title cache.
  • getLatestRevID() - get the page_latest field.
  • getLength() - get page length.
  • pageCond() - get an associative array for selecting the current Title from the page table.
  • getWikiId()
  • getId() - get the page ID.
  • toPageIdentity() - return the page represented by the current Title as a ProperPageIdentity .
  • toPageRecord() - return the page represented by the current Title as a ProperPageRecord .

Using the Title object

In order to create objects or access data, many methods in other MediaWiki PHP classes depend on the availability of a Title object.

Si vous avez un objet Title, vous pouvez obtenir un :

  • objet Article , utilisant Article::newFromTitle ( $title, IContextSource $context )
  • objet WikiPage , utilisant WikiPage::factory ( Title $title )

Cette classe peut récupérer différents types de données de la base de données; néanmoins, elle le fait de manière pas trop efficace. A la place, prenez plutôt un objet TitleValue . TitleValue est plus léger et ne dépend pas de l'état global de la base de données.

Voir aussi

Références

  1. Mutable est un mot clé de la norme permettant de dire que même un objet const peut modifier cette variable. Un attribut mutable peut être private ou public. Il est toujours modifiable même lorsque l'objet est dans un contexte constant.
  2. Mutateur est le nom général d'une fonction membre qui permet de modifier une ou des variables privées de l'objet à partir de l'extérieur. Si vous la mettez private, ça ne sert à rien.