deleteAnArticle, exportArticle, etc., we can concentrate it all in an extension
file:
- function reverseArticleTitle( $article ) {
+ function onArticleShow( &$article ) {
# ...
}
- function reverseForExport( $article ) {
+ function onArticleDelete( &$article ) {
# ...
}
-The setup function for the extension just has to add its hook functions to the
-appropriate events:
-
- setupTitleReversingExtension() {
- global $wgHooks;
+ function onArticleExport( &$article ) {
+ # ...
+ }
- $wgHooks['ArticleShow'][] = 'reverseArticleTitle';
- $wgHooks['ArticleDelete'][] = 'reverseArticleTitle';
- $wgHooks['ArticleExport'][] = 'reverseForExport';
+General practice is to have a dedicated file for functions activated by hooks,
+which functions named 'onHookName'. In the example above, the file
+'ReverseHooks.php' includes the functions that should be activated by the
+'ArticleShow', 'ArticleDelete', and 'ArticleExport' hooks. The 'extension.json'
+file with the extension's registration just has to add its hook functions
+to the appropriate events:
+
+ "Hooks": {
+ "ArticleShow": "ReverseHooks:onArticleShow",
+ "ArticleDelete": "ReverseHooks::onArticleDelete",
+ "ArticleExport": "ReverseHooks::onArticleExport"
}
Having all this code related to the title-reversion option in one place means
&$slotDiffRenderer: SlotDiffRenderer to change or replace.
$context: IContextSource
+'GetUserBlock': Modify the block found by the block manager. This may be a
+single block or a composite block made from multiple blocks; the original
+blocks can be seen using CompositeBlock::getOriginalBlocks()
+&$block: AbstractBlock object
+
'getUserPermissionsErrors': Add a permissions error when permissions errors are
checked for. Use instead of userCan for most cases. Return false if the user
can't do it, and populate $result with the reason in the form of
$sp: SpecialPage object, for context
&$fields: Current HTMLForm fields descriptors
+'SpecialMuteSubmit': DEPRECATED since 1.34! Used only for instrumentation on SpecialMute
+$data: Array containing information about submitted options on SpecialMute form
+
'SpecialNewpagesConditions': Called when building sql query for
Special:NewPages.
&$special: NewPagesPager object (subclass of ReverseChronologicalPager)
&$archive: PageArchive object
$title: Title object of the page that we're about to undelete
+'UndeletePageToolLinks': Add one or more links to edit page subtitle when a page
+has been previously deleted.
+$context: IContextSource (object)
+$linkRenderer: LinkRenderer instance
+&$links: Array of HTML strings
+
'UndeleteShowRevision': Called when showing a revision in Special:Undelete.
$title: title object related to the revision
$rev: revision (object) that will be viewed
the user's current group memberships.
'UserIsBlockedFrom': Check if a user is blocked from a specific page (for
-specific block exemptions).
+specific block exemptions if a user is already blocked).
$user: User in question
$title: Title of the page in question
&$blocked: Out-param, whether or not the user is blocked from that page.