$user: the User object that was created. (Parameter added in 1.7)
$byEmail: true when account was created "by email" (added in 1.12)
-‘AfterUserMessage': After a user message has been left, this hook is
+'AfterImportPage': When a page import is completed
+$title: Title under which the revisions were imported
+$origTitle: Title provided by the XML file
+$revCount: Number of revisions in the XML file
+$sRevCount: Number of sucessfully imported revisions
+$pageInfo: associative array of page information
+
+'AfterUserMessage': After a user message has been left, this hook is
called to take care of any cleanup.
$user: The user who we left the message for.
$article: The article the message was left on.
$tokenFunctions array and return true (returning false makes no sense)
$tokenFunctions: array(action => callback)
+'ApiRsdServiceApis': Add or remove APIs from the RSD services list.
+Each service should have its own entry in the $apis array and have a
+unique name, passed as key for the array that represents the service data.
+In this data array, the key-value-pair identified by the apiLink key is
+required.
+&$apis: array of services
+
'ArticleAfterFetchContent': after fetching content of an article from
the database
$article: the article (object) being loaded from the database
$output: the OutputPage object ($wgOut)
&$reason: the reason (string) the article is being deleted
+'ArticleContentOnDiff': before showing the article below a diff
+ $diffEngine: the DifferenceEngine
+ $output: the OutputPage object ($wgOut)
+
'ArticleDelete': before an article is deleted
$article: the article (object) being deleted
$user: the user (object) deleting the article
'BookInformation': Before information output on Special:Booksources
$isbn: ISBN to show information for
$output: OutputPage object in use
+
+'CanonicalNamespaces': For extensions adding their own namespaces or altering the defaults
+&$namespaces: Array of namespace numbers with corresponding canonical names
'CategoryPageView': before viewing a categorypage in CategoryPage::view
$catpage: CategoryPage instance
the link, like "§ion=$section"
$tooltip: The default tooltip. Escape with htmlspecialchars() before using.
By default, this is wrapped in the 'editsectionhint' message.
-$result: The HTML to return, prefilled with the default plus whatever other
+&$result: The HTML to return, prefilled with the default plus whatever other
changes earlier hooks have made
+$lang: The language code to use for the link in the wfMsg* functions
'EditFilter': Perform checks on an edit
$editor: Edit form (see includes/EditPage.php)
$editPage: EditPage object
'EditPage::attemptSave': called before an article is
-saved, that is before Article::doEdit() is called
+saved, that is before insertNewArticle() is called
$editpage_Obj: the current EditPage object
'EditPage::importFormData': allow extensions to read additional data
$title: Title being linked to
$section: Section to link to
$link: Default link
-$result: Result (alter this to override the generated links)
+&$result: Result (alter this to override the generated links)
+$lang: The language code to use for the link in the wfMsg* functions
'EmailConfirmed': When checking that the user's email address is "confirmed"
$user: User being checked
'FileUpload': When a file upload occurs
$file : Image object representing the file that was uploaded
+$reupload : Boolean indicating if there was a previously another image there or not (since 1.17)
+$hasDescription : Boolean indicating that there was already a description page and a new one from the comment wasn't created (since 1.17)
'FileUndeleteComplete': When a file is undeleted
$title: title object to the file
$url: string value as output (out parameter, can modify)
$query: query options passed to Title::getInternalURL()
+'GetIP': modify the ip of the current user (called only once)
+&$ip: string holding the ip as determined so far
+
'GetLinkColours': modify the CSS class of an array of page links
$linkcolour_ids: array of prefixed DB keys of the pages linked to,
indexed by page_id.
'getUserPermissionsErrorsExpensive': Absolutely the same, but is called only
if expensive checks are enabled.
-'HTMLCacheUpdate::doUpdate': After cache invalidation updates are inserted
-into the job queue.
-$title: Title object, pages linked to this title are purged.
-
'ImageBeforeProduceHTML': Called before producing the HTML created by a wiki
image insertion. You can skip the default logic entirely by returning
false, or just modify a few things using call-by-reference.
$result[2 through n]=Parameters passed to body text message. Please note the
header message cannot receive/use parameters.
+'ImportHandleLogItemXMLTag': When parsing a XML tag in a log item
+$reader: XMLReader object
+$logInfo: Array of information
+Return false to stop further processing of the tag
+
+'ImportHandlePageXMLTag': When parsing a XML tag in a page
+$reader: XMLReader object
+$pageInfo: Array of information
+Return false to stop further processing of the tag
+
+'ImportHandleRevisionXMLTag': When parsing a XML tag in a page revision
+$reader: XMLReader object
+$revInfo: Array of information
+Return false to stop further processing of the tag
+
+'ImportHandleToplevelXMLTag': When parsing a top level XML tag
+$reader: XMLReader object
+Return false to stop further processing of the tag
+
+'ImportHandleUploadXMLTag': When parsing a XML tag in a file upload
+$reader: XMLReader object
+$revisionInfo: Array of information
+Return false to stop further processing of the tag
'InitializeArticleMaybeRedirect': MediaWiki check to see if title is a redirect
$title: Title object ($wgTitle)
'ListDefinedTags': When trying to find all defined tags.
&$tags: The list of tags.
-'LoadExtensionSchemaUpdates': called by maintenance/updaters.inc when upgrading
-database schema
+'LoadExtensionSchemaUpdates': called during database installation and updates
+&updater: A DatabaseUpdater subclass
'LocalFile::getHistory': called before file history query performed
$file: the file
Note: this is only run for the Monobook skin. This hook is deprecated and
may be removed in the future. To add items to the toolbox you should use
the SkinTemplateToolboxEnd hook instead, which works for all
-'SkinTemplate'-type skins.
+"SkinTemplate"-type skins.
$tools: array of tools
+'BaseTemplateToolbox': Called by BaseTemplate when building the $toolbox array
+and returning it for the skin to output. You can add items to the toolbox while
+still letting the skin make final decisions on skin-specific markup conventions
+using this hook.
+&$sk: The BaseTemplate base skin template
+&$toolbox: An array of toolbox items, see BaseTemplate::getToolbox and
+ BaseTemplate::makeListItem for details on the format of individual
+ items inside of this array
+
'NewRevisionFromEditComplete': called when a revision was inserted
due to an edit
$article: the article edited
$parserOutput: the parserOutput (object) that corresponds to the page
$text: the text that will be displayed, in HTML (string)
+'OutputPageBodyAttributes': called when OutputPage::headElement is creating the body
+tag to allow for extensions to add attributes to the body of the page they might
+need. Or to allow building extensions to add body classes that aren't of high
+enough demand to be included in core.
+$out: The OutputPage which called the hook, can be used to get the real title
+$sk: The Skin that called OutputPage::headElement
+&$bodyAttrs: An array of attributes for the body tag passed to Html::openElement
+
'OutputPageCheckLastModified': when checking if the page has been modified
since the last visit
&$modifiedTimes: array of timestamps.
$article: the page the form is shown for
$out: OutputPage object
+'ResourceLoaderRegisterModules': Right before modules information is required, such as when responding to a resource
+loader request or generating HTML output.
+&$resourceLoader: ResourceLoader object
+
'RawPageViewBeforeOutput': Right before the text is blown out in action=raw
&$obj: RawPage object
&$text: The text that's going to be the output
'SetupAfterCache': Called in Setup.php, after cache objects are set
-‘SetupUserMessageArticle': Called in User::leaveUserMessage() before
+'SetupUserMessageArticle': Called in User::leaveUserMessage() before
anything has been posted to the article.
$user: The user who we left the message for.
&$article: The article that will be posted to.
'SkinAfterContent': Allows extensions to add text after the page content and
article metadata.
&$data: (string) Text to be printed out directly (without parsing)
+$skin: Skin object
This hook should work in all skins. Just set the &$data variable to the text
you're going to add.
$type: 'normal' or 'history' for old/diff views
&$msg: overridable message; usually 'copyright' or 'history_copyright'. This message must be in HTML format, not wikitext!
&$link: overridable HTML link to be passed into the message as $1
+&$forContent: overridable flag if copyright footer is shown in content language.
-'SkinSubPageSubtitle': At the beginning of Skin::subPageSubtitle()
+'SkinGetPoweredBy'
+&$text: additional 'powered by' icons in HTML.
+Note: Modern skin does not use the MediaWiki icon but plain text instead
$skin: Skin object
+
+'SkinSubPageSubtitle': At the beginning of Skin::subPageSubtitle()
&$subpages: Subpage links HTML
+$skin: Skin object
If false is returned $subpages will be used instead of the HTML
subPageSubtitle() generates.
If true is returned, $subpages will be ignored and the rest of
$opts: FormOptions for this request
'SpecialRecentChangesQuery': called when building sql query for
-SpecialRecentChanges
+SpecialRecentChanges and SpecialRecentChangesLinked
&$conds: array of WHERE conditionals for query
&$tables: array of tables to be queried
&$join_conds: join conditions for the tables
$opts: FormOptions for this request
&$query_options: array of options for the database request
+&$select: String '*' or array of columns to select
'SpecialSearchGomatch': called when user clicked the "Go" button and the target
exists
$uploadFormTextAfterSummary to inject text (HTML) either before
or after the editform.
-'UploadForm:BeforeProcessing': DEPRECATED! at the beginning of processUpload()
+'UploadForm:BeforeProcessing': at the beginning of processUpload()
$form: UploadForm object
Lets you poke at member variables like $mUploadDescription before the
file is saved.
+Do not use this hook to break upload processing. This will return the user to
+a blank form with no error message; use UploadVerification and
+UploadVerifyFile instead
'UploadCreateFromRequest': when UploadBase::createFromRequest has been called
$type: (string) the requested upload type
added to the descriptor
$descriptor: (array) the HTMLForm descriptor
-'UploadVerification': additional chances to reject an uploaded file
+'UploadVerification': additional chances to reject an uploaded file. Consider
+ using UploadVerifyFile instead.
string $saveName: destination file name
string $tempName: filesystem path to the temporary file for checks
string &$error: output: message key for message to show if upload canceled
is the message key and the remaining elements are used as parameters to
the message.
+'UploadVerifyFile': extra file verification, based on mime type, etc. Preferred
+ in most cases over UploadVerification.
+object $upload: an instance of UploadBase, with all info about the upload
+string $mime: the uploaded file's mime type, as detected by MediaWiki. Handlers
+ will typically only apply for specific mime types.
+object &$error: output: true if the file is valid. Otherwise, an indexed array
+ representing the problem with the file, where the first element
+ is the message key and the remaining elements are used as parameters to
+ the message.
+
'UploadComplete': Upon completion of a file upload
$uploadBase: UploadBase (or subclass) object. File can be accessed by
$uploadBase->getLocalFile().
&$timestamp: new timestamp, change this to override local email
authentification timestamp
-'UserToggles': called when initialising User::$mToggles, use this to add
-new toggles
-$toggles: array of toggles to add
-
'WantedPages::getSQL': called in WantedPagesPage::getSQL(), can be used to
alter the SQL query which gets the list of wanted pages
&$wantedPages: WantedPagesPage object