Manual:Hooks/ChangesListSpecialPageStructuredFilters

ChangesListSpecialPageStructuredFilters
Available from version 1.29.0 (Gerrit change 337546)
Called to allow extensions to register filters for pages inheriting from ChangesListSpecialPage (in core: RecentChanges, RecentChangesLinked, and Watchlist).
Define function:
public static function onChangesListSpecialPageStructuredFilters( ChangesListSpecialPage $special ) { ... }
Attach hook: In extension.json:
{
	"Hooks": {
		"ChangesListSpecialPageStructuredFilters": "MediaWiki\\Extension\\MyExtension\\Hooks::onChangesListSpecialPageStructuredFilters"
	}
}
Called from: File(s): ChangesListSpecialPage.php
Function(s): ChangesListSpecialPage::registerFilters()
Interface: ChangesListSpecialPageStructuredFiltersHook.php

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


Generally, you will want to construct new ChangesListBooleanFilter or ChangesListStringOptionsFilter objects.

When constructing them, you specify which ChangesListFilterGroup they belong to. You can reuse existing groups (accessed through $special->getFilterGroup), or create your own (ChangesListBooleanFilterGroup or ChangesListStringOptionsFilterGroup). If you create new groups, you must register them with $special->registerFilterGroup.

Note that this is called regardless of whether the user is currently using the new (structured) or old (unstructured) filter UI. If you want your boolean filter to show on both the new and old UI, specify all the supported fields. These include showHide, label, and description.

See the constructor of each ChangesList* class for documentation of supported fields.

Details edit

See also edit