function hook_shortcut_default_set
Same name in other branches
- 7.x modules/shortcut/shortcut.api.php \hook_shortcut_default_set()
- 9 core/modules/shortcut/shortcut.api.php \hook_shortcut_default_set()
- 8.9.x core/modules/shortcut/shortcut.api.php \hook_shortcut_default_set()
- 11.x core/modules/shortcut/shortcut.api.php \hook_shortcut_default_set()
Return the name of a default shortcut set for the provided user account.
This hook allows modules to define default shortcut sets for a particular user that differ from the site-wide default (for example, a module may want to define default shortcuts on a per-role basis).
The default shortcut set is used only when the user does not have any other shortcut set explicitly assigned to them.
Note that only one default shortcut set can exist per user, so when multiple modules implement this hook, the last (i.e., highest weighted) module which returns a valid shortcut set name will prevail.
Parameters
\Drupal\Core\Session\AccountInterface $account: The user account whose default shortcut set is being requested.
Return value
string The name of the shortcut set that this module recommends for that user, if there is one.
Related topics
1 invocation of hook_shortcut_default_set()
- ShortcutSetStorage::getDefaultSet in core/
modules/ shortcut/ src/ ShortcutSetStorage.php - Gets the default shortcut set for a given user account.
File
-
core/
modules/ shortcut/ shortcut.api.php, line 34
Code
function hook_shortcut_default_set(\Drupal\Core\Session\AccountInterface $account) {
// Use a special set of default shortcuts for administrators only.
$roles = \Drupal::entityTypeManager()->getStorage('user_role')
->loadByProperties([
'is_admin' => TRUE,
]);
$user_admin_roles = array_intersect(array_keys($roles), $account->getRoles());
if ($user_admin_roles) {
return 'admin-shortcuts';
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.