Manual:Hooks/PersonalUrls

PersonalUrls
Available from version 1.7.0 (r14138, codereview)
Removed in version 1.41.0 (Gerrit change 959839)
Called after the personal URLs have been set up, before they are shown.
Define function:
public static function onPersonalUrls( array &$personal_urls, Title $title, SkinTemplate $skin ) { ... }
Attach hook: In extension.json:
{
	"Hooks": {
		"PersonalUrls": "MediaWiki\\Extension\\MyExtension\\Hooks::onPersonalUrls"
	}
}
Called from: File(s): skins/SkinTemplate.php
Interface: PersonalUrlsHook.php

For more information about attaching hooks, see Manual:Hooks .
For examples of extensions using this hook, see Category:PersonalUrls extensions.

Details

edit
  • $personal_urls: the array of URLs set up so far
  • $title: the Title object of the current article
  • $skin: SkinTemplate object providing context (e.g. to check if the user is logged in, etc.) - since 1.23 (gerrit:95776)

personal_urls items format

edit
Each line of the array is composed from an array, containing 4 items:
Key Description
text The link text
href The link URL
active Determines if this link is the active page
class Custom CSS class for the link (e.g. new if the page doesn't exist)
icon Icon identifier, for use in skins which support it, e.g. Vector (2022)

Only text and href are mandatory.

List of PersonalUrls

edit

In a vanilla MediaWiki install, the $personal_urls contains the following entries:

Key Description Target page sample
userpage & anonuserpage The user page User:John Doe
mytalk & anontalk The user talk page User talk:John Doe
preferences The preferences special page Special:Preferences
watchlist The user watchlist Special:Watchlist
mycontris The user contributions page Special:Contributions/John Doe
logout The logout page Special:UserLogout
createaccount The registration page Special:Createaccount
login & anonlogin The login page Special:UserLogin