Accroches

From mediawiki.org
This page is a translated version of the page Manual:Hooks and the translation is 60% complete.
Pour les accroches de la bibliothèque JavaScript de MediaWiki, voir : mw.hook.
MediaWiki extensions

Les accroches permettent au code utilisateur d'être exécuté lorsqu'un événement prédéfini (tel que l'enregistrement d'une page ou la connexion d'un utilisateur) se produit. Par exemple, l'extrait de code suivant déclenche un appel à la fonction MyExtensionHooks::onPageContentSaveComplete chaque fois que l'accroche PageContentSaveComplete s'exécute, en lui transmettant des arguments de fonction spécifiques à PageContentSaveComplete .

Les accroches peuvent être enregistrées en établissant une correspondance entre le nom de l'accroche et la procédure de callback dans le fichier extension.json de l'extension:

"Hooks": {
    "PageContentSaveComplete": "MyExtensionHooks::onPageContentSaveComplete",
    "MyCustomHook": "MyExtensionHooks::myCustomHook"
}

MediaWiki fournit beaucoup d'accroches comme celle-ci pour étendre les fonctionnalités du logiciel MediaWiki. Assigner une fonction (appelée gestionnaire d'accroche) à une accroche fera que cette fonction sera appelée à l'endroit approprié du code principal MediaWiki, pour exécuter toute(s) tâche(s) supplémentaire(s) que le développeur pense être utile(s) à cet endroit. Chaque accroche peut avoir de multiples gestionnaires qui lui sont attachés, auquel cas elle appellera les fonctions dans l'ordre où elles ont été assignées, les modifications laissées par une fonction étant passées à la fonction suivante de la chaîne.

Assignez les fonctions aux accroches à la fin de LocalSettings.php ou dans votre fichier personnel d'extension à la portée du fichier (non pas dans une fonction $wgExtensionFunctions ni dans l'accroche de ParserFirstCallInit ). Pour les extensions, si le comportement de la fonction de l'accroche est conditionné par une valeur de LocalSettings.php, l'accroche devra être assignée et la fonction se terminer plus tôt lorsque la condition n'est pas satisfaite.

Vous pouvez également créer de nouvelles accroches dans votre propre extension. Il est enregistré dans extension.json de la même manière que si vous étiez en train d'enregistrer une accroche MediaWiki intégrée utilisée dans votre extension. Vous pouvez alors exécuter votre accroche dans votre extension en appelant HookContainer::run( 'HookName', [ $param1, $param2 ] );. Enfin, n'oubliez pas de les ajouter à Category:Extension hooks .

Contexte

Une accroche est déclenchée par un appel à HookContainer::run, et souvent par une méthode dans HookRunner. HookContainer trouvera les gestionnaires d'accroches à exécuter, et les appellera avec les paramètres donnés à HookContainer::run. Gestionnaires d'accroches enregistrés via extension.json .

Voir aussi la Hooks.md.

Dans cet exemple de la fonction doPurge de WikiPage.php, doPurge appelle HookRunner::onArticlePurge pour exécuter l'accroche ArticlePurge , en lui passant $this comme argument :

$this->getHookRunner()->onArticlePurge( $this )

Le Noyau appelle beaucoup d'accoches, mais Extensions peut aussi appeler des accroches.

Ecrire un gestionnaire d'accroche

Un gestionnaire d'accroche est une fonction que vous enregistrez et qui sera appelée à chaque fois que l'accroche en question est exécutée.

Pour les extensions, enregistrez vos gestionnaires d'accroche dans le fichier extension.json  :

{
	"Hooks": {
		"EventName": [
			"MyExtensionHooks::onEventName",
			"someFunction"
		]
	}
}

Les gestionnaires d'accroche peuvent également être enregistrés dans le tableau global $wgHooks . Ceci est utilisé en général pour les adaptations spécifiques aux sites dans LocalSettings.php, ou dans les anciennes extensions d'avant extension.json. Tout ce qui suit sont les manières valides pour définir un gestionnaire d'accroche pour l'accroche EventName à qui on passe deux paramètres :

Format Syntaxe Appel de fonction résultant
Fonction statique $wgHooks['EventName'][] = 'MyExtensionHooks::onEventName'; MyExtensionHooks::onEventName( $param1, $param2 );
Fonction sans données $wgHooks['EventName'][] = 'efSomeFunction'; efSomeFunction( $param1, $param2 );
Fonction avec données $wgHooks['EventName'][] = [ 'efSomeFunction', $someData ]; efSomeFunction( $someData, $param1, $param2 );
fonction anonyme en ligne
$wgHooks['EventName'][] = function ( $param1, $param2 ) {
// ...function body
};
Objet seul $wgHooks['EventName'][] = $object; $object->onEventName( $param1, $param2 );
Objet avec méthode $wgHooks['EventName'][] = [ $object, 'someMethod' ]; $object->someMethod( $param1, $param2 );
Objet avec méthode et données $wgHooks['EventName'][] = [ $object, 'someMethod', $someData ]; $object->someMethod( $someData, $param1, $param2 );

Notez que lorsqu'un objet est assigné et que vous n'avez pas indiqué de méthode, la méthode appelée est "onEventName". Par exemple onArticleSave, onUserLogin, etc.

Les données optionnelles sont utiles si vous voulez utiliser la même fonction ou objet pour différents objectifs. Par exemple :

$wgHooks['PageContentSaveComplete'][] = [ 'efIrcNotify', 'TimStarling' ];
$wgHooks['PageContentSaveComplete'][] = [ 'efIrcNotify', 'brion' ];

Ce code résulterait en une double exécution de efIrcNotify() quand une page est enregistrée : une fois pour 'TimStarling', et une fois pour 'brion'.

Valeurs renvoyées par le gestionnaire d'accroches

Les accroches se classent en deux catégories en fonction des valeurs possibles qu'elles renvoient :

Version de MediaWiki :
1.23

Accroches void

Une accroche de type void (c'est à dire vide) ne renvoie rien. Ce doit être le cas général avec du nouveau code (T245364).

  • Documentation : @return void
  • Utilisation: $hookRunner->onExample();

The interface for void hooks must include a native return type hint like : void, so that extensions that choose to implement the interface (as opposed to handling it without interface validation), benefit from static analysis and thus avoid accidentally returning something. This prevents severe bugs that are hard to catch otherwise (T173615). These hooks ignore the return value and so in isolation, a return value is simply unused, harmless, with no visible effect. In production, it would cancel listeners from other extensions for the same hook. Effectively undeploying only part of an extension this way can have major consequeces.

Accroches avortables

Les accroches avortables peuvent renvoyer le booléen false. Lorsqu'une valeur renvoyée, différente de void est fournie à une accroche avortable, elle saute les autres écouteurs présents sur cette accroche (ceux des autres extensions) et renvoie false à l'appelant de l'accroche. C'est la même chose que Event.stopImmediatePropagation() et Event.preventDefault() en Javascript.

Si en tant qu'auteur d'une fonctionnalité vous souhaitez autoriser qu'une extension interdise ou annule l'action de l'utilisateur, il faut fournir une accroche avortable pour cela.

  • Documentation : @return bool|void
  • Utilisation : if ( $hookRunner->onExample() ) { … }

Il est important que les accroches avortables permettent un retour de type void (vide). La majorité des consommateurs de l'accroche ne font pas usage de cette fonctionnalité avortable, et doivent donc pouvoir typer leur implémentation sur @return void évitant ainsi en toute sécurité la nécessité de retourner quelque chose et avec cela bénéficier de n'avoir aucun endroit qui renverrait false par erreur.

Valeurs renvoyées :

  • void (aucune valeur renvoyée, ou null) - le gestionnaire d'accroche s'est bien exécuté. (Avant MediaWiki 1.23, il était nécessaire de renvoyer la valeur true.)
  • false - le gestionnaire de l'accroche a fait tout le travail nécessaire, ou s'est substitué au traitement normal. Cela empêche les autres gestionnaires d'être exécutés, et dans certains cas cela permet à la fonction appelante de sauter le traitement normal.
Habituellement quand les extensions vous permettent d'annuler une action, l'accroche fournit également un objet Status dans lequel peut figurer une erreur traduite.
Version de MediaWiki :
1.40

Avant MediaWiki 1.41, les accroches avortables pouvaient renvoyer un message d'erreur sous forme de chaîne. C'était un raccourci pour produire la réponse « Internal Server Error (HTTP 500) » en renvoyant la chaîne affichée dans une erreur fatale. Ceci est obsolète dans MW 1.35 (Gerrit change 571297), et a été supprimé dans MW 1.41 (Gerrit change 571297).

Gestion des accroches dans MediaWiki 1.35+

Version de MediaWiki :
1.35

MediaWiki 1.35 introduces the HookHandlers extension attribute. Cela inclut des interfaces par crochet pour une validation statique améliorée et la découverte de la documentation des paramètres. Cela permet également l'injection de dépendances en introduisant une instance de classe intermédiaire qui accepte un certain nombre de services spécifiés (au lieu de rappels statiques qui accèdent explicitement aux services à partir de l'état global).

L'approche de MediaWiki 1.34 et des versions antérieures, consistant à enregistrer les gestionnaires de crochets directement en tant que méthodes statiques, reste prise en charge et n'est pas obsolète. Les auteurs d'extensions peuvent s'inscrire au nouveau système et sont même invités à le faire. Pour en savoir plus, Voir la MediaWiki core: specification du crochet et l'annonce sur wikitech-l.

Modifications des noms d'accroches

Avant MediaWiki 1.35, les accroches comprenaient quelque fois des caractères qui ne pouvaient pas être utilisés dans une classe ni dans un nom de méthode, comme des virgules ou des tirets. Avec l'introduction des interfaces par accroche, le nom canonique de ces accroches a été changé pour utiliser les caractères souligné '_' à la place. Par exemple l'interface pour ApiFeedContributions::feedItem est ApiFeedContributions__feedItemHook. Les gestionnaires d'accroches enregistrés avec les anciens noms restent pris en charge.

Enregistrer les accroches avec HookHandlers

Pour adopter le nouveau système, modifier la classe de vos accroches pour qu'elles aient des méthodes régulières au lieu de méthodes statiques et pour qu'elles soient constructibles. Cette classe est ensuite enregistrée une fois, via l'attribut HookHandlers dans extension.json , en utilisant l'option class comme une partie de description ObjectFactory où vous pouvez utiliser l'options services.

Par exemple pour enregistrer l'accroche BeforePageDisplay  :

{
    "HookHandlers": {
        "main": {
            "class": "MediaWiki\\Extension\\Example\\Hooks",
            "services": [ "UserNameUtils" ]
        }
    },
    "Hooks": {
        "BeforePageDisplay": "main"
    }
}

Gérer les accroches utilisant les interfaces

To use hook interfaces, extensions should define a Hooks class in their namespace and implement one or more hook interfaces. Les interfaces des accroches ont le nom de l'accroche suivi du mot « Hook ».

namespace MediaWiki\Extension\MyExtension;

use MediaWiki\Hook\BeforePageDisplayHook;
use OutputPage;
use Skin;

class Hooks implements BeforePageDisplayHook {
    public function onBeforePageDisplay( $out, $skin ): void { ... }
}

Convertir une extension dans le nouveau système d'accroches

Suivre ces étapes pour chaque méthode de gestion d'accroche :

  • identify the hook handler interface, and make the Hooks class implement this interface.
  • update the method name and signature to be exactly the same as in the interface.
  • modifier la section Hooks de extension.json pour se référer au gestionnaire que vous avez spécifié dans la section HookHandlers.

Le processus a été montré au Wikimedia Hackathon 2021  :

Documentation

Actuellement, les accroches du coeur de MediaWiki doivent être documentées à la fois dans l'interface des accroches (dépôt du code source) et ici sur MediaWiki.org. Dans certaines situations, un de ces endroits peut ne pas encore être finalisé, aussi si une accroche paraît non documentée, vérifiez les deux cas.

Chaque accroche fournie par le noyau de MediaWiki est définie par un interface d'accroche. Les interfaces d'accroches sont typiquement situés dans un sous-espace de noms « Hook » de l'espace de noms de l'appelant. Par exemple, Storage/Hook/PageContentSaveCompleteHook.php. Vous pouvez trouver une liste d'interfaces d'accroches dans la documentation PHP générée de MediaWiki.

Pour documenter une accroche du wiki, utiliser {{Modèle:MediaWikiHook }}.

Depuis juin 2020, docs/hooks.txt est obsolète en tant que source de documentation pour les accroches individuelles. Pour plus d'informations sur l'introduction des accroches basées sur HookContainer, voir la spécification des accroches dans le noyau MediaWiki.

Modèle de doncumentation de l'interface des accroches

Dans les interfaces d'accroches, la documentation décrit le statut, la fonction, les paramètres et le comportement de l'accroche.

/**
 * @stable for implementation
 * @ingroup Hooks
 */
interface MyExampleHook {
	/**
	 * This hook is called after/when...
	 * Use this hook to...
	 *
	 * @since x.xx
	 * @param string $name Description
	 * @return void This hook must not abort, it must return no value
	 */
	public function onMyExample( $name ): void;
}
/**
 * @stable for implementation
 * @ingroup Hooks
 */
interface AbortableExampleHook {
	/**
	 * This hook is called before...
	 * Use this hook to...
	 *
	 * @since x.xx
	 * @param string $name Description
	 * @@return bool|void True or no return value to continue or false to abort
	 */
	public function oAbortableExample( $name );
}

Accroches disponibles

Accroches groupées par fonction

Certaines de ces accroches peuvent être groupées en plusieurs fonctions.

Sections : Gestion des articles - Modification de page - Génération de page - Interface utilisateur - Gestion des fichiers - Pages spéciales - Gestion des utilisateurs - Journalisation - Modèles d'habillages - API - Import/Export - Différences - Divers
Avertissement Avertissement : De nouvelles accroches sont ajoutées à MediaWiki régulièrement, donc il est possible que cette liste ne soit pas toujours actuelle. Comme avec la plupart de la documentation de ce site, si vous avez besoin absolument de la dernière information complète, il est préférable de consulter la liste des interfaces d'accroche générée. Comme d'habitude, nous vous encourageons à mettre à jour cette liste pour corriger les erreurs éventuellles ou les omissions.
Fonction Version Accroche Description
Gestion des articles 1.23.0 Article::MissingArticleConditions appelé à l'affichage d'une page
1.21 ArticleAfterFetchContentObject (obsolète depuis v. 1.32) Après avoir récupéré le contenu d'un article de la base de données.
1.16 ArticleConfirmDelete Se produit avant d'écrire le formulaire de confirmation de la suppression d'un article.
1.21 ArticleContentViewCustom (supprimé en 1.35) permet de sortir le texte de l'article dans un format différent du wikicode
1.25 ArticleDeleteAfterSuccess Sortie après la suppression d'un article
1.4.0 ArticleDeleteComplete (obsolète depuis v. 1.37) se produit après que la demande de suppression d'article a été traitée
1.4.0 ArticleDelete (obsolète depuis v. 1.37) Se produit à chaque fois que le logiciel reçoit une requête de suppression d'un article
1.5.7 ArticleEditUpdateNewTalk permet aux extensions d'empêcher l'envoi d'une notification utilisateur lorsqu'un nouveau message est ajouté sur sa page de discussion
1.6.0 ArticleEditUpdatesDeleteFromRecentchanges Se produit avant l'enregistrement dans la base de données. Si vous renvoyez false les anciennes entrées ne sont pas supprimées de la liste des modifications récentes.
1.14.0 ArticleEditUpdates (obsolète depuis v. 1.35) Appelé lorsque les mises à jour d'édition (principalement le suivi des liens) sont effectuées lorsqu'un article a été modifié.
1.8.0 ArticleFromTitle Appelé pour déterminer la classe qui va gérer le rendu de l'article en fonction de son titre
1.12.0 ArticleMergeComplete après avoir fusionné vers un article en utilisant Special:Mergehistory
1.36 ArticleParserOptions Cette accroche est appelée avant l'analyse syntaxique du wikicode pour un article,
1.18 ArticlePrepareTextForEdit Appelé lors de la préparation d'un texte à enregistrer.
1.4.0 ArticleProtectComplete Se produit après que la demande de protection d'un article ait été traitée
1.4.0 ArticleProtect se produit à chaque fois que le logiciel reçoit une requête pour protéger un article
1.6.0 ArticlePurge Permet à une extension d'annuler une purge.
1.12.0 ArticleRevisionUndeleted (obsolète depuis v. 1.35) Se produit après qu'une révision d'article ait été restaurée
1.32 ArticleRevisionViewCustom permet de générer le texte d'une révision d'article dans un format différent du wikicode
1.13.0 ArticleRevisionVisibilitySet appelé lors du changement de visibilté d'une ou plusieurs révisions d'un article
1.12.0 ArticleRollbackComplete (obsolète depuis v. 1.35) se produit après que la restitution d'un article soit terminée
1.21 ArticleUndeleteLogEntry Se produit quand une entrée du journal a été générée mais n'est pas encore enregistrée
1.9.1 ArticleUndelete Lorsqu'une ou plusieurs révisions d'un article sont restaurées
1.11.0 ArticleUpdateBeforeRedirect se produit après qu'une page ait été mise à jour (habituellement lors de la sauvegarde), avant que l'utilisateur ne soit redirigé sur cette page
1.18 ArticleViewFooter Après avoir affiché la section du pied de page d'une vue de page ordinaire.
1.17 CanonicalNamespaces Pour les extensions ajoutant leurs propres espaces de noms ou modifiant les valeurs par défaut.
1.25 ChangeTagAfterDelete Appelé après qu'une balise de modification a été supprimée (c'est-à-dire supprimée de toutes les révisions et des entrées du journal auxquelles elle a été appliquée).
1.25 ChangeTagCanCreate Indiquez si une balise de modification doit pouvoir être créée par les utilisateurs.
1.25 ChangeTagCanDelete Indique si une balise de modification peut être supprimée par les utilisateurs.
1.28 ChangeTagsAfterUpdateTags Peut être utilisé par les extensions pour effectuer des actions après l'ajout ou la mise à jour des balises de modification.
1.30 ChangeTagsAllowedAdd Appelé pour vérifier si un utilisateur peut ajouter tags à une modification.
1.25 ChangeTagsListActive Peut être utilisé par les extensions pour enregistrer les balises de modification actives.
1.21.0 ContentHandlerDefaultModelFor appelé lorsqu'il faut décider du modèle de contenu par défaut d'un titre donné.
1.21.0 ContentHandlerForModelID appelé lorsqu'un ContentHandler est nécessaire à un nom de modèle de contenu donné, mais qu'il n'existe pas d'entrée pour ce modèle dans $wgContentHandlers .
1.23 ContentModelCanBeUsedOn args = $modelId, Title $title, &$ok
1.21.0 ConvertContent appelé lors d'une demande de conversion vers un autre modèle de contenu.
1.29 GetContentModels Permet d'ajouter des gestionnaires de contenu personnalisé à la liste des modèles de contenu enregistrés dans le système.
1.39 JsonValidateSave Use this hook to add additional validations for JSON content pages.
1.19 LanguageGetNamespaces Permet d'ordonner les espaces de noms d'une manière personnalisée on d'en supprimer.
1.25.0 MovePageIsValidMove Indique si une page peut être déplacée pour des raisons techniques.
1.35.0 MultiContentSave Se produit lorsque le logiciel reçoit une requête d'enregistrement d'article
1.25 MovePageCheckPermissions Indique si l'utilisateur a le droit de renommer la page.
1.20 NamespaceIsMovable Appelé lorsqu'on détermine s'il est possible de renommer des pages, dans un espace de noms particulier. Ces contrôles se font à la fois vers et à partir de l'espace de noms fourni.
1.13 NewRevisionFromEditComplete (obsolète depuis v. 1.35) Appelé quand une révision est insérée suite à une modification.
1.21 PageContentInsertComplete (obsolète depuis v. 1.35) Se produit après qu'un nouvel article est créé
1.18 PageContentLanguage Allows changing the page content language and consequently all features depending on that (writing direction, LanguageConverter, ...).
1.21.0 PageContentSaveComplete (obsolète depuis v. 1.35) se produit après que la demande d'enregistrement d'article ait été traitée
1.21.0 PageContentSave (obsolète depuis v. 1.35) (utiliser MultiContentSave) Se produit lorsque le logiciel reçoit une requête d'enregistrement d'article
1.37.0 PageDelete Se produit chaque fois que le logiciel reçoit une demande de suppression d'une page.
1.37.0 PageDeleteComplete Se produit après le traitement de la demande de suppression de page.
1.32 PageDeletionDataUpdates Appelé lors de la construction d'une liste de DeferrableUpdate à exécuter lorsqu'une page est supprimée.
1.35 PageMoveComplete Après qu'un article a été renommé, après la validation
1.35 PageMoveCompleting Après qu'un article a été renommé, avant la validation
1.35 PageSaveComplete Après qu'un article ait été mis à jour.
1.37 PageUndelete Exécuter avant la restitution de page.
1.40 PageUndeleteComplete Exécuter après la restitution de page.
1.25 PageViewUpdates Appelé après que l'affichage d'une page ait été consulté, par MediaWiki. Remarquez que cela ne capture pas les vues effectuées par les caches externes tels que Squid .
1.16 ProtectionForm::buildForm (obsolète depuis v. 1.36) Appelé après que tous les types de protection de champs aient été appliqués dans le formulaire.
1.16 ProtectionForm::save Appelé lorsqu'un formulaire de protection est sousmis.
1.16 ProtectionForm::showLogExtract Appelé après qu'un extrait du journal des protections ait été affiché.
1.36 ProtectionFormAddFormFields Cette accroche est appelée après que tous les types de protection des champs du formulaire ont été ajoutés.
1.8.0 RecentChange_save Appelé après qu'une « Modification récente » ait été validée dans la base de données.
1.32 RevisionDataUpdates Appelé lors de la construction d'une liste de DeferrableUpdate à exécuter pour enregistrer des données secondaires concernant une révision.
1.35 RevisionFromEditComplete Appelé quand une révision a été insérée suite à une modification, au téléversement d'un fichier, à un import ou un renommage de page.
1.11.0 RevisionInsertComplete (obsolète depuis v. 1.31) (use RevisionRecordInserted) Appelé après qu'une révision ait été insérée dans la base de données
1.31 RevisionRecordInserted Appelé après qu'une révision ait été insérée dans la base de données.
1.35 RevisionUndeleted Appelé après qu'une révision d'article ait été restaurée
1.35 RollbackComplete (obsolète depuis v. 1.36) Se produit après que la restitution d'un article soit terminée
1.15 ListDefinedTags Peut être utilisé par les extensions pour enregistrer les balises de modification.
1.6.0 SpecialMovepageAfterMove appelé après qu'une page a été renommée.
1.14 TitleArrayFromResult Appelé lors de la création d'un objet TitleArray à partir d'un résultat de la base de données.
1.24 TitleExists Appelé pour déterminer si une page existe avec un titre donné.
1.22 TitleGetEditNotices Appelé lors de la récupération des notes de modification d'une page donnée.
1.16 TitleGetRestrictionTypes Permet de modifier les types de protections pouvant être appliquées.
1.20.0 TitleIsAlwaysKnown permet de réécraser le comportement par défaut pour déterminer qu'une page existe.
1.19 TitleIsMovable Appelé pour déterminer s'il est possible de renommer une page.
1.4.0 TitleMoveComplete (obsolète depuis v. 1.35) se produit lorsqu'une demande de renommage de page s'est terminée
1.27 TitleMoveCompleting (obsolète depuis v. 1.35) Se produit chaque fois qu'une demande de renommage d'un article est émise, avant que la transaction ne valide la base de données.
1.27 TitleMoveStarting Avant de renommer un article (titre), mais juste après que la section atomique de la base de données ait commencé.
1.22.0 TitleMove se produit avant qu'un renommage de page ne soit réalisé
1.22 TitleQuickPermissions Appelé à partir de Title::checkQuickPermissions pour permettre de sauter la vérification rapide des autorisations sur le titre (par exemple, l'autorisation de supprimer).
1.19 TitleReadWhitelist appelé à la fin des contrôles d'accès en lecture, juste avant d'ajouter le message d'erreur par défaut, si rien ne permet à l'utilisateur de lire la page.
1.18 UndeleteForm::undelete (supprimé en 1.38) Called un UndeleteForm::undelete, after checking that the site is not in read-only mode, that the Title object is not null and after a PageArchive object has been constructed but before performing any further processing.
1.21 WikiPageDeletionUpdates (supprimé en 1.36) Manipulate the list of DeferrableUpdate s to be applied when a page is deleted. Appelé dans WikiPage::getDeletionUpdates() Note that updates specific to a content model should be provided by the respective Content's getDeletionUpdates() method.
1.28 WikiPageFactory Redéfinit la classe WikiPage utilisée pour un titre
Modification de page 1.21.0 AlternateEditPreview Permet de rétablir l'aperçu des modifications
1.6.0 AlternateEdit utilisé pour remplacer la page entière de modification, tous les éléments.
1.9.1 CustomEditor lorsque l'éditeur de page est appelé. Return true to allow the normal editor to be used, or false if implementing a custom editor, e.g. for a special namespace, etc.
1.21.0 EditFilterMergedContent filtre des modifications des fusions ultérieures de sections
1.6.0 EditFilter réalise des contrôles sur une modification
1.16 EditFormInitialText Permet de changer le formulaire d'édition quand vous modifiez des pages existantes
1.7.0 EditFormPreloadText Appelé lorsque la page de modification pour un nouvel article est affichée. Cela vous permet de préinitialiser la boîte textuelle d'une nouvelle page avec un wikicode initial.
1.25 EditPage::attemptSave:after Appelé après une tentative de sauvegarde d'article
1.8.3 EditPage::attemptSave Appelé avant qu'un article ne soit enregistré, c'est à dire avant que insertNewArticle() ne soit appelé
1.16 EditPage::importFormData Appelé lors de la lecture des données du formulaire d'édition, après le POST
1.6.0 EditPage::showEditForm:fields Permet l'injection d'un champ formulaire dans le formulaire de modification.
1.6.0 EditPage::showEditForm:initial Permet l'injection de code HTML dans le formulaire de modification
1.24 EditPage::showReadOnlyForm:initial Appelé juste avant que le formulaire en lecture seule ne soit généré
1.21.0 EditPage::showStandardInputs:options Permet l'ajout de champs de formulaire dans la zone editOptions
1.13.0 EditPageBeforeConflictDiff Permet de modifier l'objet EditPage et la sortie lorsqu'il y a un conflit d'édition.
1.12.0 EditPageBeforeEditButtons Permet de modifier les boutons d'édition du formulaire de modification
1.16 EditPageBeforeEditToolbar Permet de modifier la barre des outils d'édition au-dessus de la zone de texte
1.16 EditPageCopyrightWarning Permet d'adapter la notice du site ainsi que les contributions / droits d'auteur en fonction de l'espace de noms.
1.29 EditPageGetCheckboxesDefinition Permet de modifier les cases à cocher d'édition dans le formulaire d'édition
1.21 EditPageGetDiffContent Permet de modifier le wikiclde qui sera utilisé dans Voir les modifications. Notez qu'il est préférable d'implémenter la gestion du diff pour différents types de données en utilisant la facilité ContentHandler .
1.21 EditPageGetPreviewContent Permet de modifier le wikicode affiché dans l'aperçu. Notez qu'il est préférable d'implémenter les aperçus pour différents types de données en utilisant la facilité ContentHandler .
1.16 EditPageNoSuchSection Lorsqu'une demande de modification de section est passée pour une section qui n'existe pas.
1.16 EditPageTosSummary Permet en plus de la note de droits d'auteur, d'avoir un lien séparé pour le site et l'adaptation par espace de noms, du résumé des règles d'utilisation du service.
1.20 FormatAutocomments Quand un commentaire automatique est formaté par le Linker.
1.19 PlaceNewSection Réécrase l'emplacement des nouvelles sections.
1.35 ParserPreSaveTransformComplete Appelé à partir de Parser::preSaveTransform() après que le traitement soit terminé, ce qui donne à l'extension la possibilité de modifier ultérieurement le wikicode.
Génération de page 1.27.0 AfterBuildFeedLinks exécuté après que tous les liens de flux ne soient créés.
1.24 AfterParserFetchFileAndTitle Modifier le code HTML d'une galerie d'images. Il est appelé après qu'une galerie d'images soit formée par Parser , juste avant d'ajouter son HTML à la sortie de l'analyseur syntaxique.
1.21 ArticleContentViewCustom (supprimé en 1.35) permet de générer le texte de l'article dans un format différent du wikicode
1.6.0 ArticlePageDataAfter s'exécute après avoir chargé les données d'un article de la base de données.
1.6.0 ArticlePageDataBefore s'exécute avant que les données de l'article demandé ne soient chargées.
1.36 ArticleParserOptions Cette accroche est appelée avant l'analyse syntaxique du wikicode pour un article,
1.32 ArticleRevisionViewCustom permet de générer le texte d'une révision d'article dans un format différent du wikicode
1.18 ArticleViewFooter Après avoir affiché la section du pied de page dans la vue d'une page ordinaire.
1.6.0 ArticleViewHeader Appelé après qu'un entête d'article soit affiché.
1.5.1 ArticleViewRedirect Permet à une extension d'empêcher l'affichage d'un lien « Redirigé à partir de » sur une page de redirection.
1.7 BadImage Utilisé pour déterminer si une image figure dans la liste des mauvaises images. Renvoie false quand $bad est initialisé.
1.19 BeforeDisplayNoArticleText Avant d'afficher les messages noarticletext ou noarticletext-nopermission.
1.24 BeforeHttpsRedirect (obsolète depuis v. 1.35) Appelé avant de forcer la redirection HTTP→HTTPS. Utilisez cette accroche pour redéfinir la sortie de la redirection.
1.19 BeforePageRedirect Appelé avant d'envoyer une redirection HTTP
1.18.0 BeforeParserFetchFileAndTitle permet à une extension de sélectionner une version différente de l'image pointée par le lien
1.10.1 BeforeParserFetchTemplateAndtitle (obsolète depuis v. 1.36) permet à une extension de spécifier la version d'une page à récupérer pour pouvoir l'inclure dans un modèle.
1.36 BeforeParserFetchTemplateRevisionRecord Cette accroche est appelée avant qu'un modèle ne soit récupéré par Parser.
1.10.1 BeforeParserrenderImageGallery (obsolète depuis v. 1.35) permet à une extension de modifier une gallerie d'images avant de la générer.
1.22 CanIPUseHTTPS (obsolète depuis v. 1.35) Appelé pour vérifier qu'une adresse IP donnée peut utiliser HTTPS
1.4.3 CategoryPageView Appelé avant l'affichage d'une page de catégorie dans CategoryPage::view
1.25 CategoryViewer::doCategoryQuery Se produit après avoir demandé les pages à afficher dans une page de catégorie
1.25 CategoryViewer::generateLink Avant de générer un lien de sortie, donne aux extensions la possibilité de générer un lien plus spécifique ou plus adapté.
1.25 ContentAlterParserOutput Personnalise la sortie de l'analyseur pour un objet de contenu donné, appelé par AbstractContent::getParserOutput.
1.24.0 ContentGetParserOutput Personnalise la sortie de l'analyseur pour un objet de contenu donné, appelé par AbstractContent::getParserOutput. Peut être utilisé pour redéfinir le rendu normal spécifique au modèle du contenu d'une page.
1.22.0 GalleryGetModes permet aux extensions d'ajouter des classes qui peunvent générer différents modes d'une gallerie.
1.12 GetLinkColours modifie la classe CSS d'un tableau de liens de pages
1.28 HtmlPageLinkRendererBegin args = LinkRenderer $linkRenderer, LinkTarget $target, &$text, &$extraAttribs, &$query, &$ret
1.28 HtmlPageLinkRendererEnd args = LinkRenderer $linkRenderer, LinkTarget $target, $isKnown, &$text, &$attribs, &$ret
1.13 ImageBeforeProduceHTML Appelé avant de générer le HTML créé par l'insertion d'une image de wiki
1.11 ImageOpenShowImageInlineBefore Lancé juste avant l'affichage d'une image sur une page d'image.
1.16 ImagePageAfterImageLinks Appelé après que la section des liens d'image d'une page d'images, ne soit construite.
1.13 ImagePageFileHistoryLine Appelé lorsque la ligne d'historique du fichier est construite.
1.13 ImagePageFindFile Called when fetching the file associated with an image page.
1.16 ImagePageShowTOC Called when fetching the file associed with an image page.
1.10.0 InternalParseBeforeLinks utilisé pour traiter le code wiki expansé après que ‎<nowiki>, que les commentaires HTML, ainsi que les modèles ont été traités. Convient aux extensions de syntaxe qui veulent personnaliser le traitement de la syntaxe des liens internes, c'est à dire [[....]].
1.20 InternalParseBeforeSanitize (obsolète depuis v. 1.35) This hook is called during Parser's internalParse method just before the parser removes unwanted/dangerous HTML tags and after nowiki/noinclude/includeonly/onlyinclude and other processings.
1.13.0 LinkerMakeExternalImage Appelé avant que le HTML d'une image externe ne soit renvoyé. Used for modifying external image HTML.
1.13.0 LinkerMakeExternalLink Appelé avant que le HTML pour des liens externes ne soit renvoyés. Used for modifying external link HTML.
1.23.0 LinkerMakeMediaLinkFile Appelé avant que le HTML pour des liens des médias ne soit renvoyé. Utilisé pour modifier le HTML des liens de médias.
1.6.0 OutputPageBeforeHTML Appelé à chaque fois que du code wiki est ajouté à OutputPage, après qu'il soit passé par l'analyse syntaxique mais avant qu'il soit ajouté. Appelé après la page ait été générée, mais avant que le HTML ne soit affiché.
1.8.0 OutputPageParserOutput appelé après l'analyse syntaxique, avant que le HTML ne soit ajouté à la sortie.
1.6.0 PageRenderingHash modifie la clé de hachage de l'option du cache de l'analyseur syntaxique
1.20 ParserAfterParse Appelé de Parser::parse() juste après le retour de l'appel à Parser::internalParse().
1.5.0 ParserAfterStrip (supprimé en 1.36) Avant la version 1.14.0, utilisé pour traiter les lignes de code wiki après que le texte entouré par les balises ‎<nowiki> ait été protégé et qu'avant que tout autre texte ne soit traité. Dans la version 1.14.0 et ultérieure, fonctionne immédiatement après ParserBeforeStrip.
1.5.0 ParserAfterTidy utilisé pour ajouter un ultime traitement à la sortie générée de la page complète
1.26 ParserAfterUnstrip Appelé après le premier unstripGeneral() dans Parser::internalParseHalfParsed()
1.6.0 ParserBeforeInternalParse Remplace par un traitement personnalisé, le traitement standard du texte wiki nettoyé. Used primarily to support alternatives (rather than additions) to the core MediaWiki markup syntax.
1.35 ParserBeforePreprocess Appelé au début de Parser::preprocess()
1.5.0 ParserBeforeStrip (supprimé en 1.36) Utilisé pour traiter les lignes de code wiki avant de leur appliquer tout traitement interne.
1.5.0 ParserBeforeTidy (supprimé en 1.36) utilisé pour traiter le code HTML de la page presque généré (mais avant toute opération de nettoyage)
1.26 ParserCacheSaveComplete Modifier ParserOutput en sécurité après l'avoir enregistré dans le cache.
1.6.0 ParserClearState Appelé à la fin de Parser::clearState()
1.21.0 ParserCloned Appelé quand l'objet Parser est cloné.
1.28 ParserFetchTemplate (obsolète depuis v. 1.35) Appelé lorsque l'analyseur recherche un modèle
1.6.0 ParserGetVariableValueSwitch assigne une valeur à une variable définie par l'utilisateur.
1.6.0 ParserGetVariableValueTs Utiliser ceci pour modifier la valeur de l'heure pour le mot magique {{LOCAL...}}.
1.6.0 ParserGetVariableValueVarCache (obsolète depuis v. 1.35) Utilsez ceci pour modifier la valeur de cache de la variable , ou retournez false pour ne pas l'utiliser.
1.35 ParserFetchTemplateData Retrouve les données du modèle dans une série de titres de modèles
1.22 ParserLimitReportFormat Appelé sur chaque rangée du rapport de limite de l'analyseur qui a besoin d'être formatée.
1.22 ParserLimitReportPrepare Called at the end of Parser:parse() when the parser will include comments about size of the text parsed.
1.39 ParserLogLinterData Report lints from Parsoid to the Linter extension
1.12 ParserMakeImageParams Alter the parameters used to generate an image before it is generated
1.38 ParserModifyImageHTML This hook is called for each image added to parser output, with its associated HTML as returned from Linker::makeImageLink().
1.30 ParserOptionsRegister Permet d'enregistrer les options supplémentaires de l'analyseur
1.31 ParserOutputPostCacheTransform Called from ParserOutput::getText() to do post-cache transforms.
1.27 ParserOutputStashForEdit Called when an edit stash parse finishes, before the output is cached.
1.35 ParserPreSaveTransformComplete Called from Parser::preSaveTransform() after processing is complete, giving the extension a chance to further modify the wikitext.
1.19 ParserSectionCreate (obsolète depuis v. 1.35) Appelé à chaque fois que l'analyseur syntaxique crée une section du document à partir du wikicode.
1.26 RejectParserCacheValue Renvoie false pour rejeter une valeur du cache Parser qui serait utilisable autrement.
1.26 ResourceLoaderForeignApiModules Appelé de ResourceLoaderForeignApiModule. Utilisez ceci pour ajouter des dépendances au module mediawiki.ForeignApi lorsque vous souhaitez redéfinir son comportement. Voir la documentation des modules pour plus d'informations.
1.17 ResourceLoaderGetConfigVars Appelé juste avant que ResourceLoaderStartUpModule::getConfig ne revienne à l'appelant, pour mettre à jour les variables de configuration statiques (indépendantes de la requête). Ne peut pas dépendre de la page, de l'utilisateur, ni de la requête actuelle; voir ci-dessous.
1.18 ResourceLoaderGetStartupModules Exécute une fois que le module de démarrage ait été généré.
1.38 ResourceLoaderExcludeUserOptions Exclude a user option from the preloaded data for client-side mw.user.options.
1.29 ResourceLoaderJqueryMsgModuleMagicWords Appelé dans ResourceLoaderJqueryMsgModule pour permettre d'ajouter des mots magiques pour jQueryMsg. La clé est un mot magique en majuscules, et la valeur est une chaîne; les valeurs dépendent uniquement de la ResourceLoaderContext
1.17.0 ResourceLoaderRegisterModules permet d'enregistrer les modules avec ResourceLoader
1.35 ResourceLoaderSiteModulePages Allows to change which wiki pages comprise the `site` module in given skin.
1.35 ResourceLoaderSiteStylesModulePages Allows to change which wiki pages comprise the 'site.styles' module in given skin.
1.19 ResourceLoaderTestModules (obsolète depuis v. 1.33) Add new javascript test suites. This is called after the addition of MediaWiki core test suites.
1.24.0 SidebarBeforeOutput Directement avant que la barre latérale ne soit affichée
1.16 ShowMissingArticle Called when generating the output for a non-existent page.
Interface utilisateur 1.18 ActionBeforeFormDisplay Before executing the HTMLForm object
1.18 ActionModifyFormFields Before creating an HTMLForm object for a page action; allows to change the fields on the form that will be generated.
1.20 AfterFinalPageOutput Nearly at the end of OutputPage::output().
1.9.1 AjaxAddScript Called in output page just before the initialisation
1.5.7 ArticleEditUpdateNewTalk avant de mettre à jour user_newtalk lorsqu'une page utilisateur a été changée.
1.6.0 ArticlePurge s'exécute avant de lancer &action=purge
1.32 ArticleShowPatrolFooter Can be used to hide the [mark as patrolled] link in certain circumstances
1.18.0 BeforeWelcomeCreation permet à une extension de modifier le message affiché après une connexion réussie
1.32 ContentSecurityPolicyDefaultSource Modifier les sources de téléversement CSP autorisées. This affects all directives except for the script directive.
1.32 ContentSecurityPolicyDirectives Modify the content security policy directives.
1.32 ContentSecurityPolicyScriptSource Modify the allowed CSP script sources.
1.4.0 EmailUserComplete Se produit après qu'un courriel a été envoyé d'un utilisateur à un autre
1.4.0 EmailUser se produit à chaque fois que le logiciel reçoit une requête pour envoyer un courriel d'un utilisateur à un autre
1.41 EmailUserAuthorizeSend Called when checking whether a user is allowed to send emails
1.41 EmailUserSendEmail Called before sending an email, when all other checks have succeeded.
1.21 GetHumanTimestamp Pre-emptively override the human-readable timestamp generated by MWTimestamp::getHumanTimestamp(). Return false in this hook to use the custom output.
1.31 GetLangPreferredVariant Allows fetching the language variant code from cookies or other such alternative storage.
1.22 GetNewMessagesAlert Disable or modify the new messages alert before it is shown
1.16 GetPreferences Modifiez les préférences utilisateur.
1.22 GetRelativeTimestamp Pre-emptively override the relative timestamp generated by MWTimestamp::getRelativeTimestamp(). Return false in this hook to use the custom output.
1.32 HistoryPageToolLinks Allows adding links to the revision history page subtitle.
1.21 HistoryRevisionTools (obsolète depuis v. 1.35) Override or extend the revision tools available from the page history view, i.e. undo, rollback, etc.
1.35 HistoryTools Use this hook to override or extend the revision tools available from the page history view, i.e. undo, rollback, etc.
1.24 LanguageSelector Hook to change the language selector available on a page.
1.6.0 MarkPatrolledComplete Appelé après que la modification a été relue
1.6.0 MarkPatrolled Appelé avant qu'une modification ait été marquée relue
1.14 MakeGlobalVariablesScript Juste avant que OutputPage->getJSVars ne renvoie les variables.
1.32 OutputPageAfterGetHeadLinksArray Allows extensions to modify the HTML metadata in the ‎<head> element
1.17 OutputPageBodyAttributes Called when OutputPage::headElement() is creating the body tag.
1.14 OutputPageCheckLastModified When checking if the page has been modified since the last visit
1.13 OutputPageMakeCategoryLinks Called when links are about to be generated for the page's categories.
1.10 PageHistoryBeforeList When a history page list is about to be constructed.
1.10 PageHistoryLineEnding Right before the end ‎<li> is added to a history line.
1.26 PageHistoryPager::doBatchLookups Allow performing batch lookups for prefetching information needed for display
1.13 PageHistoryPager::getQueryInfo When a history pager query parameter set is constructed.
1.10 RawPageViewBeforeOutput Appelé avant d'afficher une page avec action=raw. Returns true if display is allowed, false if display is not allowed.
1.16 ShowSearchHitTitle Customise display of search hit title/link.
1.21 ShowSearchHit Personnaliser l'affichage des résultats de la recherche.
1.7 SiteNoticeAfter Used to modify the site notice after it has been created from $wgSiteNotice or interface messages.
1.7 SiteNoticeBefore Used to modify the sitenotice before it has been created from $wgSiteNotice. Return false to suppress or modify default site notice.
1.6.0 SpecialMovepageAfterMove appelé après qu'une page ait été renommée.
1.19.0 SpecialSearchCreateLink appelé à la construction du message de création de page ou pour aller à une page existante
1.6.0 SpecialSearchNogomatch Appelé lorsque la fonctionnalité 'Go' est activée et que la cible n'existe pas. Full text search results are generated after this hook is called
1.19.0 SpecialSearchPowerBox équivalent de SpecialSearchProfileForm pour le formulaire avancé
1.34 UndeletePageToolLinks Add one or more links to edit page subtitle when a page has been previously deleted.
1.4.0 UnwatchArticleComplete Se produit après que la demande d'arrêt de suivi d'article ait été traitée
1.4.0 UnwatchArticle Se produit lorsque le logiciel reçoit une requête pour arrêter le suivi d'un article
1.5.7 UserClearNewTalkNotification appelé à l'effacement de « Vous avez de nouveaux messages », retournez false pour ne pas le supprimer
1.4.0 UserLoginComplete se produit après que l'utilisateur se soit connecté avec succès
1.4.0 UserLogoutComplete se produit après que l'utilisateur se soit déconnecté avec succès
1.4.0 UserLogout se produit lorsque le logiciel reçoit une requête de déconnexion
1.5.7 UserRetrieveNewTalks (obsolète depuis v. 1.35) appelé lors de la récupération de « Vous avez de nouveaux messages »
1.19 UserToolLinksEdit Called when generating a list of user tool links, eg "Foobar (discussion | contributions | bloquer)"
1.4.0 WatchArticleComplete Se produit après que la demande de suivi d'article ait été traitée
1.4.0 WatchArticle Se produit lorsque le logiciel reçoit une requête de suivi d'article
Gestion des fichiers 1.19 BitmapHandlerCheckImageArea Called by BitmapHandler::normaliseParams(), after all normalisations have been performed, except for the $wgMaxImageArea check.
1.18 BitmapHandlerTransform Before a file is transformed, gives extension the possibility to transform it themselves.
1.13 FileDeleteComplete Lorsqu'un fichier est supprimé.
1.20 FileTransformed Lorsqu'un fichier est transformé et renommé dans le dépôt.
1.13 FileUndeleteComplete Quand un fichier est restauré.
1.11 FileUpload Se déclenche lors du téléversement d'un fichier local.
1.18 GetMetadataVersion Permet de modifier la version des métadonnées de l'image actuellement utilisée.
1.23.0 GetExtendedMetadata permet d'inclure des informations de méta-données supplémentaires concernant le fichier dans l'API imageinfo.
1.24 HTMLFileCache::useFileCache Redéfinit si une page doit être mise en cache dans le cache des fichiers.
1.10.0 IsFileCacheable autorise une extension à désactiver la mise en cache de fichiers pour les pages.
1.22 IsUploadAllowedFromUrl Permet de redéfinir le résultat de UploadFromUrl::isAllowedUrl().
1.16.0 ImgAuthBeforeStream exécuté avant qu'un fichier ne soit envoyé à l'utilisateur, mais seulement si on utilise img_auth
1.34 ImgAuthModifyHeaders Exécuté juste avant que le fichier ne soit diffusé vers un utilisateur, ce qui permet d'en modifier les entêtes avant.
1.13 LocalFile::getHistory Appelé avant que la requête de l'historique de fichier ne soit effectuée.
1.19 LocalFilePurgeThumbnails Called before thumbnails for a local file are purged.
1.21 ThumbnailBeforeProduceHTML Called before an image HTML is about to be rendered (by ThumbnailImage:toHtml method).
1.16 UploadCreateFromRequest Quand UploadBase::createFromRequest a été appelé.
1.9.0 UploadForm:BeforeProcessing appelé juste avant que les données du fichier (par exemple, la description) ne soient traitées, et ceci afin que les extensions aient une chance de pourvoir les manipuler.
1.31 UploadForm:getInitialPageText Après que le texte de la page initiale pour le téléversement de fichier soit généré, pour permettre de le modifier.
1.16 UploadFormInitDescriptor Occurs after the descriptor for the upload form as been assembled.
1.16 UploadFormSourceDescriptors Occurs after the standard source inputs have been added to the descriptor.
1.28 UploadStashFile Apparaît avant qu'un fichier ne soit mis dans la zone de réserve (téléversé dans la zone de réserve).
1.6.4 UploadComplete Appelé lorsqu'un téléversement de fichier est terminé.
1.17 UploadVerifyFile appelé lorsqu'un fichier est téléversé; permet d'insérer des vérifications supplémentaires sur le fichier
1.28 UploadVerifyUpload (préféré) peut être utilisé pour rejeter le téléversement d'un fichier. A la différence de 'UploadVerifyFile' fournit des informations concernant les commentaires du téléversement et la page de description du fichier, mais ne fonctionne pas pour les téléversements en zone de réserve.
1.23 ValidateExtendedMetadataCache Called to validate the cached metadata in FormatMetadata::getExtendedMeta (return false means cache will be invalidated and the GetExtendedMetadata hook will called again).
1.18 XMPGetInfo Called when obtaining the list of XMP tags to extract.
1.18 XMPGetResults Called just before returning the results array of parsing xmp data.
Pages spéciales 1.32 AncientPagesQuery Permet de modifier la requête utilisée par Special:AncientPages.
1.9.1 BookInformation Hook to allow extensions to insert additional HTML to a list of book sources e.g. for API-interacting plugins and so on.
1.23 ChangesListInitRows Batch process change list rows prior to rendering.
1.12 ChangesListInsertArticleLink Override or augment link to article in RC list.
1.23 ChangesListSpecialPageFilters Called after building form options on pages inheriting from ChangesListSpecialPage (in core: RecentChanges, RecentChangesLinked and Watchlist).
1.24 ChangesListSpecialPageQuery Called when building SQL query on pages inheriting from ChangesListSpecialPage (in core: RecentChanges, RecentChangesLinked and Watchlist).
1.29 ChangesListSpecialPageStructuredFilters Called to allow extensions to register filters for pages inheriting from ChangesListSpecialPage (in core: RecentChanges, RecentChangesLinked, and Watchlist).
1.13 ContribsPager::getQueryInfo Called before the contributions query is about to run.
1.20 ContribsPager::reallyDoQuery Appelé avant d'exécuter réellement la requête pour Special:Contributions.
1.13 ContributionsLineEnding Called before an HTML line for Special:Contributions is finished.
1.11 ContributionsToolLinks Change tool links above Special:Contributions.
1.24 DeletedContribsPager::reallyDoQuery Appelé avant d'exécuter réellement la requête pour Special:DeletedContributions.
1.24 DeletedContributionsLineEnding Called before an HTML line for Special:DeletedContributions is finished.
1.17 EmailUserCC Occurs before sending the copy of the email to the author.
1.17 EmailUserForm Apparaît après avoir construit l'objet formulaire du courriel utilisateur.
1.16 EmailUserPermissionsErrors Retrieve permissions errors for emailing a user.
1.25 EnhancedChangesList::getLogText Allows altering, removing or adding to the links of a group of changes in EnhancedChangesList.
1.26 EnhancedChangesListModifyBlockLineData Modify data used to build a non-grouped entry in Special:RecentChanges.
1.26 EnhancedChangesListModifyLineData Modify data used to build a grouped recent change inner line in Special:RecentChanges.
1.7 FetchChangesList Allows extension to modify a recent changes list for a user.
1.20 GitViewers Called when generating the list of git viewers for Special:Version, use this to change the list.
1.30 NewPagesLineEnding Appelé avant une ligne HTML pour Special:NewPages is finished.
1.23 LonelyPagesQuery Permet de modifier la requête utilisée par Special:LonelyPages.
1.14 OldChangesListRecentChangesLine Personnalise la ligne entière de Modifications récentes.
1.23 PreferencesFormPreSave Allows last minute changes to a user's preferences (via User#setOption) before they're saved and gives a possibility to check which options were modified.
1.40 PreferencesGetIcon Add icons that will be displayed in the mobile layout of Special:Preferences.
1.40 PreferencesGetLayout Indicate whether the preferences will have a mobile or desktop layout.
1.19 PreferencesGetLegend Override the text used for the ‎<legend> of a preferences section.
1.26 RandomPageQuery Modifie la requête utilisée par Special:Random.
1.20 RedirectSpecialArticleRedirectParams Lets you alter the set of parameter names such as "oldid" that are preserved when using redirecting special pages such as Special:MyPage and Special:MyTalk.
1.27 ShortPagesQuery Allow extensions to modify the query used by Special:ShortPages.
1.24.0 SpecialBlockModifyFormFields Ajouter ou modifier les champs de blocage de Special:Block
1.27 SpecialContributions::getForm::filters Called with a list of filters to render on Special:Contributions.
1.28.0 SpecialContributions::formatRow::flags appelé avant de générer une ligne Special:Contributions.
1.5.0 SpecialContributionsBeforeMainOutput avant le formulaire sur Special:Contributions
1.40 SpecialCreateAccountBenefits Replace the default signup page content about the benefits of registering an account ("Wikipedia is made by people like you...") on Special:CreateAccount.
1.38 SpecialExportGetExtraPages Add extra pages to the list of pages to export.
1.13.0 SpecialListusersDefaultQuery Appelé juste avant la fin de UsersPager::getDefaultQuery().
1.13.0 SpecialListusersFormatRow Appelé juste avant la fin de UsersPager::formatRow().����
1.13.0 SpecialListusersHeaderForm Appelé avant l'ajout du bouton envoyer dans UsersPager::getPageHeader().
1.13.0 SpecialListusersHeader appelé avant de fermer le ‎<fieldset> dans UsersPager::getPageHeader()
1.13.0 SpecialListusersQueryInfo Appelé juste avant la fin de UsersPager::getQueryInfo()
1.34 SpecialMuteModifyFormFields Allows modifying HTMLForm fields for Special:Mute
1.34 SpecialMuteSubmit (obsolète depuis v. 1.34) Used only for instrumentation on SpecialMute
1.17 SpecialNewpagesConditions Called when building the SQL query for Special:NewPages.
1.18 SpecialNewPagesFilters Called after building form options at Special:NewPages.
1.7.0 SpecialPage_initList Appelé après que la liste de la page spéciale ait été remplie
1.20 SpecialPageAfterExecute Called after SpecialPage::execute().
1.20 SpecialPageBeforeExecute Called before SpecialPage::execute().
1.24 SpecialPageBeforeFormDisplay Before executing the HTMLForm object
1.18 SpecialPasswordResetOnSubmit Called when executing a form submission on Special:PasswordReset.
1.16 SpecialRandomGetRandomTitle Modify the selection criteria for Special:Random
1.13 SpecialRecentChangesPanel Called when building form options in SpecialRecentChanges.
1.22 SpecialResetTokensTokens Called when building token list for SpecialResetTokens.
1.27 SpecialSearchGoResult Called before the 'go' feature of SpecialSearch redirects a user. May provide it's own url to redirect to.
1.18 SpecialSearchProfileForm Allows modification of search profile forms
1.16 SpecialSearchProfiles Allows modification of search profiles.
1.21 SpecialSearchResultsAppend Called after all search results HTML has been output. Note that in some cases, this hook will not be called (no results, too many results, SpecialSearchResultsPrepend returned false, etc).
1.21 SpecialSearchResultsPrepend SpecialSearchResultsPrepend: Called immediately before returning HTML on the search results page. Useful for including an external search provider. To disable the output of MediaWiki search output, return false.
1.13 SpecialSearchResults Called before search result display when there are matches
1.18 SpecialSearchSetupEngine Allows passing custom data to search engine
1.16 SpecialStatsAddExtra Can be used to add extra statistic at the end of Special:Statistics.
1.29 SpecialTrackingCategories::generateCatLink Called for each category link on Special:TrackingCategories
1.29 SpecialTrackingCategories::preprocess Called after LinkBatch on Special:TrackingCategories
1.16 SpecialUploadComplete Appelé après le téléversement réussi d'un fichier de Special:Upload
1.21 SpecialVersionVersionUrl Called when building the URL for Special:Version.
1.22 SpecialWatchlistGetNonRevisionTypes Allows extensions to register the value they have inserted to rc_type field of recentchanges for non-revision changes so they can be included in the watchlist.
1.26 SpecialWhatLinksHereLinks Called every time a list of links is built for a list item for Special:WhatLinksHere.
1.18 UndeleteForm::showHistory Called in UndeleteForm::showHistory, after a PageArchive object has been created but before any further processing is done.
1.18 UndeleteForm::showRevision Called in UndeleteForm::showRevision, after a PageArchive object has been created but before any further processing is done.
1.18 UndeleteForm::undelete Called in UndeleteForm::undelete, after checking that the site is not in read-only mode, that the Title object is not null and after a PageArchive object has been constructed but before performing any further processing.
1.9 UndeleteShowRevision (obsolète depuis v. 1.35) Called when showing a revision in Special:Undelete.
1.9.0 UploadForm:initial appelé juste avant que le formulaire de téléversement ne soit généré
1.28 UsersPagerDoBatchLookups Give extensions providing user group data from an alternate source a chance to add their data into the cache array so that things like global user groups are displayed correctly in Special:ListUsers.
1.18 WantedPages::getQueryInfo Called in WantedPagesPage::getQueryInfo(), can be used to alter the SQL query which gets the list of wanted pages.
1.24 WatchlistEditorBeforeFormRender Occurs before building the Special:EditWatchlist form, used to manipulate the list of pages or preload data based on that list.
1.17 WatchlistEditorBuildRemoveLine Occurs when building remove lines in Special:Watchlist/edit.
1.24.0 WhatLinksHereProps permet aux extensions d'annoter les entrées de Pages liées (WhatLinksHere).
1.40 ContributeCards Fired on Special:Contribute page to allow extensions to add "card" entry points.
Gestion des utilisateurs 1.13 AbortAutoblock Allow extension to cancel an autoblock.
1.20 AbortEmailNotification Can be used to cancel email notifications for an edit.
1.22 AbortTalkPageEmailNotification Disable email notifications of edits to users' talk pages.
1.5.0 AddNewAccount (obsolète depuis v. 1.27) appelé après qu'un utilisateur ait été créé
1.27 AuthManagerLoginAuthenticateAudit A login attempt either succeeded or failed for a reason other than misconfiguration or session loss. No return data is accepted; this hook is for auditing only.
1.13 AuthPluginAutoCreate (obsolète depuis v. 1.27) Called when creating a local account for an user logged in from an external authentication method.
1.9.1 AuthPluginSetup (obsolète depuis v. 1.27) Update or replace authentication plugin object ($wgAuth).
1.12 AutopromoteCondition vérifiez la condition de promotion automatique pour l'utilisateur.
1.32 BeforeResetNotificationTimestamp Allows prevention of clearing of notification timestamp when a user views a page in their watchlist.
1.4.0 BlockIpComplete se produit après que la demande de blocage (ou la modification des paramètres de blocage) d'une adresse IP ou d'un utilisateur ait été traitée
1.4.0 BlockIp se produit à chaque fois que le logiciel reçoit une requête pour bloquer (ou pour modifier les paramètres) d'une adresse IP ou d'un utilisateur
1.27 ChangeAuthenticationDataAudit Called when user changes authentication data.
1.29.0 ChangeUserGroups appelé avant que les droits d'appartenance à un groupe ne soient modifiés
1.16 ConfirmEmailComplete Called after a user's email has been confirmed successfully.
1.31 DeleteUnknownPreferences Called by the cleanupPreferences.php maintenance script to build a WHERE clause with which to delete preferences that are not known about.
1.7 EmailConfirmed Replace default way to check whether user's email is confirmed.
1.19 ExemptFromAccountCreationThrottle To add an exemption from the account creation throttle.
1.37 GetAllBlockActions Add an action that can be blocked via a partial block.
1.40 GetBlockErrorMessageKey Allows extensions to override the message that will be displayed to the user.
1.6.0 GetBlockedStatus (supprimé en 1.35) déclenché après que le getBlockStatus de l'utilisateur soit positionné
1.34 GetUserBlock Modify the block found by the block manager.
1.12 getUserPermissionsErrors Ajouter une erreur d'autorisation lorsque des erreurs d'autorisation sont recherchées.
1.12 getUserPermissionsErrorsExpensive Same as getUserPermissionsErrors as but called only if expensive checks are enabled.
1.13 GetAutoPromoteGroups When determining which autopromote groups a user is entitled to be in.
1.16 InvalidateEmailComplete Called after a user's email has been invalidated successfully.
1.9 IsTrustedProxy Allows an extension to set an IP as trusted or not.
1.12 isValidEmailAddr Redéfinit le résultat de Sanitizer::validateEmail().
1.11 isValidPassword Redéfinit le résultat de User::isValidPassword().
1.26.0 LocalUserCreated appelé tout de suite après qu'un utilisateur local a été créé et enregistré dans la base de données.
1.37 LoadUserOptions This hook is called when user options/preferences are being loaded from the database.
1.26 PasswordPoliciesForUser Alter the effective password policy for a user.
1.18 PerformRetroactiveAutoblock Called before a retroactive autoblock is applied to a user.
1.39 PermissionErrorAudit Called after permission checks to allow logging.
1.9 PingLimiter Allows extensions to override the results of User::pingLimiter().
1.11 PrefsEmailAudit Called when user changes his email address.
1.23 ResetPasswordExpiration Allow extensions to set a default password expiration.
1.40 RenameUserAbort Allow other extensions to abort a user rename
1.40 RenameUserComplete After a sucessful user rename
1.40 RenameUserPreRename Before renaming an user
1.40 RenameUserWarning Get warnings when renaming an user
1.37 SaveUserOptions Called just before saving user preferences. This hook replaces UserSaveOptions . Hook handlers can either add or manipulate options, or reset one back to its default to block changing it. Hook handlers are also allowed to abort the process by returning false, e.g. to save to a global profile instead. Compare to the UserSaveSettings hook, which is called after the preferences have been saved.
1.27.0 SecuritySensitiveOperationStatus Modifie la valeur de retour de AuthManager::securitySensitiveOperationStatus()
1.27.0 SessionCheckInfo valide les données de session comme si elles étaient chargées à partir de leur emplacement
1.27.0 SessionMetadata ajoute les méta données à une session en cours de sauvegarde
1.39 TempUserCreatedRedirect This hook is called after an action causes a temporary user to be created. The handler may modify the redirect URL.
1.21 UpdateUserMailerFormattedPageStatus Apparaît avant qu'un courriel de notification soit envoyé.
1.29.0 UnblockUserComplete se produit après que la demande de déblocage d'une adresse IP ou d'un utilisateur a été traitée
1.29.0 UnblockUser se produit à chaque fois que le logiciel reçoit une requête pour débloquer une adresse IP ou un utilisateur
1.14 User::mailPasswordInternal Avant de créer et de diffuser le nouveau mot de passe temporaire d'un utilisateur.
1.18 UserAddGroup Called when adding a group to an user.
1.13 UserArrayFromResult Called when creating an UserArray object from a database result.
1.6.0 userCan pour interrompre ou conseiller le contrôle de « l'utilisateur peut faire X sur les articles Y »
1.12 UserCanSendEmail Allows overriding the permission check in User::canSendEmail().
1.38 UserEditCountUpdate This is called from a deferred update on edit or move and provides collected user edit count information.
1.11 UserEffectiveGroups Dynamically add or remove to the default user groups provided by the database table user_groups .
1.13 UserGetAllRights After calculating a list of all available rights.
1.18 UserGetDefaultOptions Called after fetching the core default user options.
1.13 UserGetEmailAuthenticationTimestamp Called when getting the timestamp of email authentification.
1.13 UserGetEmail Called when getting an user email address.
1.18 UserGetLanguageObject Called when getting user's interface language object.
1.14 UserGetReservedNames Allows to modify $wgReservedUsernames at run time.
1.32.0 UserGetRightsRemove Appelé dans User::getRights() pour supprimer dynamiquement des droits
1.11.0 UserGetRights Appelé dans User::getRights() pour ajouter des droits dynamiquement
1.26 UserGroupsChanged Called after user groups are changed.
1.16 UserIsBlockedFrom Check if a user is blocked from a specific page (for specific block exemptions).
1.14 UserIsBlockedGlobally (obsolète depuis v. 1.40) s'exécute avant que User::mBlockedGlobally ne soit initialisé; peut être utilisé pour modifier l'état bloqué d'une adresse IP ou d'un utilisateur
1.28 UserIsBot Occurs when determining whether a user is a bot account.
1.26.0 UserIsLocked Lancé pour vérifier que le compte d'un utilisateur est bloqué
1.22 UserIsEveryoneAllowed Check if all users are allowed some user right; return false if a UserGetRights hook might remove the named right.
1.26 UserIsHidden (supprimé en 1.35) Check if the user's name should be hidden. See User::isHidden().
1.14 UserLoadAfterLoadFromSession Called to authenticate users on external/environmental means; occurs after session is loaded.
1.13 UserLoadDefaults Called when loading a default user.
1.15 UserLoadFromDatabase Called when loading a user from the database.
1.16 UserLoadOptions When user options/preferences are being loaded from the database.
1.27.0 UserLoggedIn appelé après que l'utilisateur se soit connecté
1.27 UserMailerSplitTo Called in UserMailer::send() to give extensions a chance to split up an email with multiple of the To: field into separate emails.
1.27 UserMailerTransformContent Allow transformation of content, such as encrypting/signing.
1.27 UserMailerTransformMessage Called in UserMailer::send() to change email after it has gone through the MIME transform. Extensions can block sending the email by returning false and setting $error.
1.41 UserPrivilegedGroups Use this hook to extend what MediaWiki considers to be a "privileged group" beyond the values set in $wgPrivilegedGroups
1.18 UserRemoveGroup Called when removing a group from an user.
1.22 UserRequiresHTTPS (obsolète depuis v. 1.35) Allows extensions to override whether users need to be redirected to HTTPS.
1.24 UserResetAllOptions Permet de modifier le comportement lors de la réinitialisation des préférences utilisateur. For instance, certain preferences can be preserved.
1.16 UserSaveOptions Called just before saving user preferences. Hook handlers can either add or manipulate options, or reset one back to its default to block changing it. Hook handlers are also allowed to abort the process by returning false, e.g. to save to a global profile instead. Compare to the UserSaveSettings hook, which is called after the preferences have been saved.
1.13 UserSaveSettings Called directly after user preferences (user_properties in the database) have been saved. A comparer avec l'accroche UserSaveOptions qui est appelée auparavant.
1.33 UserSendConfirmationMail Called just before a confirmation email is sent to a user. Hook handlers can modify the email that will be sent.
1.13 UserSetCookies (obsolète depuis v. 1.27) Appelé à la définition des cookies utilisateur.
1.13 UserSetEmailAuthenticationTimestamp Called when setting the timestamp of email authentication.
1.13 UserSetEmail Appelé lors de la modification de l'adresse courriel de l'utilisateur.
Connexion 1.23 GetLogTypesOnUser Add log types where the target is a userpage.
1.26.0 LogException appelé avant qu'une exception (ou une erreur PHP) ne soit tracée dans le journal.
1.25 LogEventsListGetExtraInputs When getting extra inputs to display on Special:Log for a specific log type.
1.30 LogEventsListLineEnding Called before an HTML line for Special:Log is finished.
1.19 LogEventsListShowLogExtract Called before the result of LogEventsList::showLogExtract() is added to OutputPage.
1.12 LogLine Processes a single log entry on Special:Log.
1.33 ManualLogEntryBeforePublish Lets extensions tag log entries when actions are performed.
1.29 OtherAutoblockLogLink Get links to the autoblock log from extensions which autoblocks users and/or IP addresses too..
1.16 OtherBlockLogLink Get links to the block log from extensions which blocks users and/or IP addresses too.
1.24 SpecialLogAddLogSearchRelations Add log relations to the current log.
Habillages / Modèles 1.27.0 AuthChangeFormFields permet la modification des formulaires basés sur AuthManager
1.23.0 BaseTemplateAfterPortlet (obsolète depuis v. 1.35) (SkinTemplate.php) après avoir généré les portlets.
1.18 BaseTemplateToolbox (obsolète depuis v. 1.35) Appelé par BaseTemplate lors de la construction du tableau de boîtes à outils et de son renvoi à l'habillage pour la sortie.
1.7.0 BeforePageDisplay permet les modifications de dernière minute sur la page générée, par exemple en ajoutant du code CSS ou du Javascript à l'aide d'extensions.
1.25.0 LoginFormValidErrorMessages Permet d'ajouter des messages d'erreur supplémentaires (SpecialUserLogin.php).
1.7.0 PersonalUrls (SkinTemplate.php) appelé après que la liste des URL personnelles ait été populée (liens supérieurs dans Monobook).
1.24.0 PostLoginRedirect (SpecialUserlogin.php) modifie le comportement de la redirection juste après la procédure de connexion.
1.19 RequestContextCreateSkin Appelé lors de la création d'une instance d'habillage.
1.35 SkinAddFooterLinks Add items to the footer for skins using SkinAddFooterLinks.
1.11.0 SkinAfterBottomScripts (Skin.php) A la fin de Skin::bottomScripts()
1.14 SkinAfterContent Permet aux extensions d'ajouter du texte après le contenu de la page et des métadonnées de l'article.
1.35 SkinAfterPortlet Occurs whenever a page is rendered and allows to add HTML after portlets have been put out.
1.14 SkinBuildSidebar At the end of Skin::buildSidebar().
1.16 SkinCopyrightFooter Allow for site and per-namespace customisation of copyright notice.
1.25 SkinEditSectionLinks Modify the section edit links. Appelé quand les titres de section sont créés.
1.17 SkinGetPoweredBy (obsolète depuis v. 1.37) Called when generating the code used to display the "Powered by MediaWiki" icon.
1.36 SkinPageReadyConfig Allows skins to change the `mediawiki.page.ready` module configuration.
1.24 SkinPreloadExistence Modify the CSS class of an array of page links.
1.12.0 SkinSubPageSubtitle (Skin.php) appelé avant de générer la liste des liens vers les sous-pages en haut d'une sous-page
1.6.0 SkinTemplateBuildNavUrlsNav_urlsAfterPermalink (obsolète depuis v. 1.35) appelé après que le lien permanent (permalink) a été entré dans le tableau des URLs de navigation.
1.23.0 SkinTemplateGetLanguageLink appelé après avoir construit les données pour un lien de langue pour lequel le HTML actuel est construit.
1.18.0 SkinTemplateNavigation::SpecialPage (usage discouraged)

appelé pour les pages spéciales après que l'onglet spécial ait été ajouté mais avant l'ajout des variantes

1.18.0 SkinTemplateNavigation::Universal (usage discouraged)

appelé à la fois pour les pages de contenu et les pages spéciales après que les variantes ont été ajoutées

1.16.0 SkinTemplateNavigation Appelé sur les pages de contenu uniquement après que les onglets ont été ajoutés, mais avant que les variants ne soient ajoutés. See the other two SkinTemplateNavigation hooks for other points tabs can be modified at.
1.10 SkinTemplateOutputPageBeforeExec (obsolète depuis v. 1.35) Allows further setup of the template engine after all standard setup has been performed but before the skin has been rendered.
1.6.0 SkinTemplatePreventOtherActiveTabs (obsolète depuis v. 1.35) appelé pour activer/désactiver l'inclusion d'onglets supplémentaires à l'habillage.
1.12 SkinTemplateTabAction (obsolète depuis v. 1.35) Override SkinTemplate::tabAction().
1.13 SkinTemplateToolboxEnd (obsolète depuis v. 1.35) Called by SkinTemplate skins after toolbox links have been rendered (useful for adding more).
API 1.14.0 APIAfterExecute Utilisez cette accroche pour étendre les modules API du noyau
1.23.0 ApiBeforeMain appelé avant l'exécution de ApiMain
1.20 ApiCheckCanExecute Called during ApiMain::checkCanExecute().
1.29 ApiDeprecationHelp Add messages to the 'deprecation-help' warning generated from ApiBase::addDeprecation().
1.25 ApiFormatHighlight Use to syntax-highlight API pretty-printed output. When highlighting, add output to $context->getOutput() and return false.
1.14.0 APIGetAllowedParams Utilisez cette accroche pour modifier les paramètres d'un module
1.25 APIGetDescriptionMessages Allows to modify a module's help message.
1.25 APIGetParamDescriptionMessages Allows to modify a module's parameter descriptions.
1.25 APIHelpModifyOutput Allows to modify an API module's help output.
1.25 ApiMain::moduleManager Can be used to conditionally register API modules.
1.20 ApiMain::onException Called by ApiMain::executeActionWithErrorHandling() when an exception is thrown during API action execution.
1.28 ApiMakeParserOptions Allows extensions to adjust the parser options before parsing.
1.32 ApiMaxLagInfo Called right before giving out information about max lag in API.
1.25.0 ApiOpenSearchSuggest Appelé lors de la construction des résultats OpenSearch. Hooks can alter or append to the array.
1.33 ApiOptions Called by action=options before applying changes to user preferences.
1.32 ApiParseMakeOutputPage Called when preparing the OutputPage object for ApiParse. This is mainly intended for calling OutputPage::addContentOverride() or OutputPage::addContentOverrideCallback().
1.25 ApiQuery::moduleManager Called when ApiQuery has finished initialising its module manager.
1.14.0 APIQueryAfterExecute Utilisez cette accroche pour étendre les modules API de requête du noyau.
1.28 ApiQueryBaseAfterQuery Called for (some) API query modules after the database query has returned.
1.28 ApiQueryBaseBeforeQuery Called for (some) API query modules before a database query is made.
1.28 ApiQueryBaseProcessRow Called for (some) API query modules as each row of the database result is processed.
1.14.0 APIQueryGeneratorAfterExecute utilisez cette accroche pour étendre les modules de requête de l'API noyau
1.13.0 APIQueryInfoTokens (supprimé en 1.36) Utilisez cette accroche pour ajouter des jetons personnalisés à prop=info
1.14.0 APIQueryRecentChangesTokens (supprimé en 1.36) Utilisez cette accroche pour ajouter des jetons personnalisés à list=recentchanges
1.13.0 APIQueryRevisionsTokens (supprimé en 1.36) Utilisez cette accroche pour ajouter des jetons personnalisés à prop=revisions
1.18 APIQuerySiteInfoGeneralInfo Used to add extra information to the SiteInfo general information output.
1.22 APIQuerySiteInfoStatisticsInfo Used to add extra information to the SiteInfo statistics information output.
1.24 ApiQueryTokensRegisterTypes Use this hook to add additional token types to action=query&meta=tokens. Note that most modules will probably be able to use the 'csrf' token instead of creating their own token types.
1.15 APIQueryUsersTokens (supprimé en 1.36) Use this hook to add custom token to list=users.
1.29 ApiQueryWatchlistExtractOutputData Extract row data for ApiQueryWatchlist.
1.29 ApiQueryWatchlistPrepareWatchedItemQueryServiceOptions Populate the options to be passed from ApiQueryWatchlist to WatchedItemQueryService.
1.17 ApiRsdServiceApis Add or remove APIs from the RSD services list.
1.20 ApiTokensGetTokenTypes (supprimé en 1.36) Use this hook to extend action=tokens with new token types.
1.29 ApiValidatePassword This will allow for checking passwords against the wiki's password.
1.23.0 AddNewAccountApiForm (obsolète depuis v. 1.27) permet de modifier le formulaire interne de connexion lorsque l'on crée un compte via l'API.
1.23.0 AddNewAccountApiResult (obsolète depuis v. 1.27) modifie la sortie de l'API lorsqu'un compte a été créé via l'API.
Importer / Exporter 1.17.0 AfterImportPage Lorsqu'une importation de page est terminée
1.17.0 ImportHandleLogItemXMLTag Lors de l'analyse syntaxique d'une balise XML appartenant à un élément du journal
1.17.0 ImportHandlePageXMLTag Lors de l'analyse syntaxique d'une balise XML dans une page
1.17.0 ImportHandleRevisionXMLTag Lors de l'analyse syntaxique d'une balise XML dans une révision de page
1.17.0 ImportHandleToplevelXMLTag Lors de l'analyse syntaxique d'une balise XML de haut niveau
1.31 ImportHandleUnknownUser When a user doesn't exist locally, this hook is called to give extensions an opportunity to auto-create it. If the auto-creation is successful, return false.
1.17.0 ImportHandleUploadXMLTag lors de l'analyse syntaxique d'une balise XML dans un fichier téléversé
1.27 ImportLogInterwikiLink Hook to change the interwiki link used in log entries and edit summaries for transwiki imports.
1.27 ImportSources Called when reading from the $wgImportSources configuration variable.
1.16.0 ModifyExportQuery modifier la requête utilisée par l'exporteur
1.15.0 WikiExporter::dumpStableQuery fournit la requête SELECT pour les dumps des versions «  stables »
1.16.0 XmlDumpWriterOpenPage appelé à la fin de XmlDumpWriter::openPage, pour permettre d'ajouter des métadonnées supplémentaires.
1.16.0 XmlDumpWriterWriteRevision appelé à la fin d'une révision de dump XML, pour y ajouter des métadonnées supplémentaires.
Différences 1.14 AbortDiffCache Peut être utilisé pour annuler la mise en cache d'une différence
1.17 ArticleContentOnDiff Avant d'afficher le contenu de l'article sous une différence.
1.29 DifferenceEngineAfterLoadNewText Called in DifferenceEngine::loadNewText() after the new revision's content has been loaded into the class member variable.
1.29 DifferenceEngineLoadTextAfterNewContentIsLoaded Called in DifferenceEngine::loadText() after the new revision's content has been loaded into the class member variable $differenceEngine->mNewContent but before checking if the variable's value is null.
1.29 DifferenceEngineMarkPatrolledLink Allow extensions to change the markpatrolled link, which is shown both on the diff header as well as on the bottom of a page, usually wrapped in a ‎<span> element which has class="patrollink".
1.29 DifferenceEngineMarkPatrolledRCID Allows extensions to possibly change the rcid parameter.
1.29 DifferenceEngineNewHeader Allows extensions to change the $newHeader variable, which contains information about the new revision, such as the revision's author, whether.
1.29 DifferenceEngineOldHeaderNoOldRev Change the $oldHeader variable in cases when there is no old revision.
1.29 DifferenceEngineOldHeader Allows extensions to change the $oldHeader variable, which contains information about the old revision, such as the revision's author, whether the revision was marked as a minor edit or not, etc.
1.29 DifferenceEngineRenderRevisionAddParserOutput Allows extensions to change the parser output. Return false to not add parser output via OutputPage's addParserOutput method.
1.29 DifferenceEngineRenderRevisionShowFinalPatrolLink An extension can hook into this hook point and return false to not show the final "mark as patrolled" link on the bottom of a page.
1.29 DifferenceEngineShowDiffPageMaybeShowMissingRevision Appelé dans DifferenceEngine::showDiffPage() quand les données d'une révision ne peuvent pas être chargées.
1.29 DifferenceEngineShowDiffPage Add additional output via the available OutputPage object into the diff view.
1.29 DifferenceEngineShowDiff Allows extensions to affect the diff text which eventually gets sent to the OutputPage object.
1.29 DifferenceEngineShowEmptyOldContent Allows extensions to change the diff table body (without header) in cases when there is no old revision or the old and new revisions are identical.
1.35 DifferenceEngineViewHeader Appelé avant l'affichage du diff.
1.21 DiffRevisionTools (obsolète depuis v. 1.35) Override or extend the revision tools available from the diff view, i.e. undo, etc.
1.35 DiffTools Use this hook to override or extend the revision tools available from the diff view, i.e. undo, etc.
1.7 DiffViewHeader (obsolète depuis v. 1.35) Appelé avant l'affichage du diff.
1.25.0 GetDifferenceEngine autorise les extensions du type moteur de différences personnalisé tel que Extension:WikEdDiff .
1.21 EditPageGetDiffContent Allow modifying the wikitext that will be used in "Show changes". Note that it is preferable to implement diff handling for different data types using the ContentHandler facility.
1.15 NewDifferenceEngine Appelé lorsqu'un nouvel objet DifferenceEngine est créé.
1.32 GetSlotDiffRenderer Replace or wrap the standard SlotDiffRenderer for some content type.
1.41 TextSlotDiffRendererTablePrefix Allows to change the HTML that is included in a prefix container directly before the diff table
Divers 1.19.0 AlternateUserMailer Appelé avant que le courriel ne soit envoyé de sorte à ce qu'il puisse être tracé (ou équivalent) au lieu d'utiliser PEAR ou mail() de PHP.
1.6.0 ArticleEditUpdatesDeleteFromRecentchanges (obsolète depuis v. 1.35) se produit avant de sauvegarder une base de données.
1.19 BacklinkCacheGetConditions Allows to set conditions for query when links to certain title.
1.19 BacklinkCacheGetPrefix Allows to set prefix for a spefific link table.
1.16 BeforeInitialize Occurs before anything is initialised in MediaWiki::performRequest().
1.36 BeforeRevertedTagUpdate This hook is called before scheduling a RevertedTagUpdateJob.
1.21.0 CategoryAfterPageAdded Appelé après qu'une page ait été ajoutée à une catégorie
1.21.0 CategoryAfterPageRemoved Appelé après qu'une page ait été retirée d'une catégorie
1.19.0 Collation::factory permet aux extensions d'enregistrer de nouveaux noms de collations, à utiliser avec $wgCategoryCollation
1.8.0 DisplayOldSubtitle Permet aux extensions de modifier l'affichage des liens vers d'autres révisions lors de la navigation dans les révisions.
1.17 ExtensionTypes Appelé lors de la génération des crédits d'extensions, utilisez ceci pour modifier l'entête des tables.
1.37 GetActionName Use this hook to override the action name depending on request parameters.
1.13 GetCacheVaryCookies Get cookies that should vary cache options.
1.18 GetCanonicalURL Allows to modify fully-qualified URLs used for IRC and e-mail notifications.
1.18.0 GetDefaultSortkey permet de réécraser la clé de tri définie par défaut, telle qu'elle est utilisée pour classer les pages dans une catégorie.
1.21.0 GetDoubleUnderscoreIDs accroche pour modifier la liste des mots magiques
1.6.0 GetFullURL utilisé pour modifier les URLs complètement spécifiées utilisées dans les redirections, les exportations et les données hors connexion
1.6.0 GetInternalURL utilisé pour modifier les URLs complètement spécifiées (utile pour purger le cache squid)
1.17 GetIP Modify the ip of the current user (called only once).
1.6.0 GetLocalURL utilisé pour modifier les URLs locales en tant que liens de pages
1.19 GetLocalURL::Article Allows to modify local URLs specifically pointing to article paths without any fancy queries or variants.
1.19 GetLocalURL::Internal Allows to modify local URLs to internal pages.
1.35 GetMagicVariableIDs Use this hook to modify the list of magic variables.
1.35 HtmlCacheUpdaterAppendUrls This hook is used to declare extra URLs to purge from HTTP caches.
1.35 HtmlCacheUpdaterVaryUrls This hook is used to add variants of URLs to purge from HTTP caches.
1.20 InfoAction When building information to display on the action=info page.
1.13 InitializeArticleMaybeRedirect Appelé pour vérifier qu'un titre est une redirection.
1.18 InterwikiLoadPrefix (obsolète depuis v. 1.36) This hook is called when resolving whether a given prefix is an interwiki or not.
1.18 IRCLineURL When constructing the URL to use in an IRC notification.
1.19 Language::getMessagesFileName Use to change the path of a localisation file.
1.18 LanguageGetTranslatedLanguageNames Provide translated language names.
1.22.0 LanguageLinks Manipule les liens de langue d'une page.
1.14.0 LinkBegin (supprimé en 1.36) Utilisé lors de la génération des liens internes et des liens inter-wikis dans Linker::link()
1.14.0 LinkEnd (supprimé en 1.36) Utilisé lors de la génération des liens internes et des liens inter-wikis dans Linker::link(), juste avant que la fonction ne retourne une valeur.
1.12 LinksUpdate At the beginning of LinksUpdate::doUpdate() just before the actual update.
1.21 LinksUpdateAfterInsert Occurs right after new links have been inserted into the links table.
1.12 LinksUpdateComplete At the end of LinksUpdate::doUpdate() when updating has completed.
1.11 LinksUpdateConstructed At the end of LinksUpdate() is construction.
1.10.1 LoadExtensionSchemaUpdates Fired when MediaWiki is updated to allow extensions to register updates for the database schema.
1.24 LocalisationCacheRecacheFallback Called for each language when merging fallback data into the cache.
1.16 LocalisationCacheRecache Called when loading the localisation data into cache.
1.23 LocalisationChecksBlacklist When fetching the blacklist of localisation checks.
1.24 LocalisationIgnoredOptionalMessages args = array &$ignoredMessageKeys, array &$optionalMessageKeys
1.6.0 MagicWordwgVariableIDs (obsolète depuis v. 1.35) indique à MediaWiki qu'un ou plusieurs IDs de mots magiques doivent être traités comme des variables.
1.18 MaintenanceRefreshLinksInit Before executing the refreshLinks.php maintenance script.
1.33 MaintenanceUpdateAddParams Allow extensions to add params to the update.php maintenance script.
1.23 MathMLChanged Is called before the MathML property is changed can be used e.g. for compression, normalisation or introduction of custom hyperlinks etc.
1.12.0 MediaWikiPerformAction Écrase MediaWiki::performAction()
1.32 MediaWikiPHPUnitTest::endTest Occurs when a MediaWiki PHPUnit test has ended.
1.32 MediaWikiPHPUnitTest::startTest Occurs when a MediaWiki PHPUnit test has started.
1.27.0 MediaWikiServices appelé lorsqu'une instance globale de MediaWikiServices est initialisée.
1.23 MessageCache::get Allows changing a message key, to customise it before the translation is accessed.
1.41 MessageCacheFetchOverrides Allows changing message keys, to customise it before the translation is accessed
1.15 MessageCacheReplace When a message page is changed. Useful for updating caches.
1.5.7 MessagesPreLoad se produit au chargement d'un message de la base de données
1.24 MimeMagicGuessFromContent Allows MW extensions guess the MIME by content.
1.24 MimeMagicImproveFromExtension Allows MW extensions to further improve the MIME type detected by considering the file extension.
1.24 MimeMagicInit Before processing the list mapping MIME types to media types and the list mapping MIME types to file extensions. As an extension author, you are encouraged to submit patches to MediaWiki's core to add new MIME types to mime.types.
1.13 OpenSearchUrls Called when constructing the OpenSearch description XML. Hooks can alter or append to the array of URLs for search & suggestion formats.
1.25 OpportunisticLinksUpdate Allows performing updates when a page is re-rendered.
1.20 ParserTestGlobals Allows to define globals for parser tests.
1.6.0 ParserTestParser appelé à la création d'une nouvelle instance de Parser pour les tests de l'analyseur syntaxique
1.10 ParserTestTables (obsolète depuis v. 1.36) Alter the list of tables to duplicate when parser tests are run. Use when page save hooks require the presence of custom tables to ensure that tests continue to run properly.
1.12 PrefixSearchBackend (obsolète depuis v. 1.27) Override the title prefix search used for OpenSearch and AJAX search suggestions.
1.25 PrefixSearchExtractNamespace Called if core was not able to extract a namespace from the search string so that extensions can attempt it.
1.10 RawPageViewBeforeOutput Called before displaying a page with action=raw. Returns true if display is allowed, false if display is not allowed.
1.30 RecentChangesPurgeRows Called when old recentchanges rows are purged, after deleting those rows but within the same transaction.
1.27 RequestHasSameOriginSecurity Called to determine if the request is somehow flagged to lack same-origin security.
1.8.0 RecentChange_save appelé après qu'une Modification récente ait été validée dans la base de données
1.16 SearchableNamespaces An option to modify which namespaces are searchable.
1.21 SearchAfterNoDirectMatch If there was no match for the exact result. This runs before lettercase variants are attempted, whereas SearchGetNearMatch runs after.
1.28 SearchDataForIndex Allows to provide custom content fields when indexing a document.
1.40 SearchDataForIndex2 Allows to provide custom content fields when indexing a document.
1.16 SearchGetNearMatchBefore Perform exact-title-matches in "go" searches before the normal operations.
1.16 SearchGetNearMatchComplete A chance to modify exact-title-matches in "go" searches.
1.12 SearchGetNearMatch An extra chance for exact-title-matches in "go" searches.
1.28 SearchIndexFields Add fields to search index mapping.
1.20 SearchResultInitFromTitle Set the revision used when displaying a page in search results.
1.35 SearchResultProvideDescription Called when generating search results in order to fill the "description" field in an extension.
1.35 SearchResultProvideThumbnail This hook is called when generating search results in order to fill the thumbnail field in an extension.
1.28 SearchResultsAugment Allows extension to add its code to the list of search result augmentors.
1.25 SecondaryDataUpdates (obsolète depuis v. 1.32) Allows modification of the list of DataUpdates to perform when page content is modified.
1.24 SelfLinkBegin Appelé pour générer un auto-lien sur une page.
1.23 SendWatchlistEmailNotification Can be used to cancel watchlist email notifications (enotifwatchlist) for an edit.
1.14 SetupAfterCache Appelé dans Setup.php, une fois que les objets du cache sont définis.
1.15 SoftwareInfo Appelé par Special:Version pour renvoyer les informations à propos du logiciel.
1.18 TestCanonicalRedirect Called when about to force a redirect to a canonical URL for a title when we have no other parameters on the URL.
1.22.0 TitleSquidURLs pour modifier ou fournir des URLs alternatives pour envoyer les requêtes HTTP PURGE.
1.30.0 UnitTestsAfterDatabaseSetup appelé juste après l'infrastructure de test de MediaWiki ait fini de créer ou de dupliquer les tables du noyau pour les tests unitaires.
1.30.0 UnitTestsBeforeDatabaseTeardown appelé juste avant que l'infrastructure de test de MediaWiki ne commence à déchirer les tables pour les tests unitaires.
1.17.0 UnitTestsList Ajoute les tests à exécuter qui feront partie de la suite des tests unitaires.
1.24.0 UserMailerChangeReturnPath appelé pour générer une adresse de retour VERP quand UserMailer envoie un courriel, avec une extension qui gère les rebonds.
1.29 WatchedItemQueryServiceExtensions Add a WatchedItemQueryServiceExtension.
1.19 WebRequestPathInfoRouter While building the PathRouter to parse the REQUEST_URI.
1.22 WebResponseSetCookie Utilisé pour modifier le cookie initialisé par WebResponse::setcookie().
1.20 wfShellWikiCmd Appelé lors de la génération de la chaîne échappée d'une ligne de commande pour exécuter un script cli[1].
1.6.0 wgQueryPages Est exécuté à chaque page spéciale qui étend la classe QueryPage (déclenché par l'inclusion du fichier QueryPage.php). It is only useful in maintenance/updateSpecialPages.php and in QueryPage Api.

Liste alphabétique des accroches

Pour une liste complète des accroches, utilisez la catégorie , qui devrait être plus à jour.

Voir aussi

  1. CLI — command line interface