Tiger_Admin_Settings
@api
Tiger_Admin_Settings — the admin "Settings" registry (the module hook).
A module contributes its own settings page under the admin sidebar's Settings tree by registering here from its Bootstrap — no core file to edit, and it's ACL-gated + activation- gated for free (an inactive module never bootstraps, so its page never registers). Core pre-registers CMS and System; a third party adds one line:
Tiger_Admin_Settings::register([ 'key' => 'billing', // unique; dedupes 'label' => 'Billing', 'icon' => 'fa-credit-card', // shown on a landing page (nav shows submenu text) 'href' => '/billing/settings', // the module's own admin-layout screen 'resource' => 'Billing_SettingsController', // ACL resource — the item hides if denied 'order' => 50, // sort weight (lower first); default 100 ]);
The sidebar builds the Settings submenu from pages(); URL namespace follows module ownership (/cms/settings, /system/settings, /billing/settings) while the shared admin layout + this registry deliver one consistent experience.
Methods
register()
register(array $page)
Register (or replace, by key) a settings page. Requires key, label, href; icon, resource, order, and match are optional.
$pagearray— page definition (key, label, href, and optional icon/resource/order/match)
pages()
pages()
The registered pages as sidebar nav-item arrays (label/href/match/icon/resource), sorted by order then label. ACL filtering happens in the menu partial, live per role.
Returns array<int,array>
clear()
clear()
Reset the registry (tests).