Various convenient functions and views for working with menus
$menu_items = menus_api_combine_menus([
'entity',
'owner_block',
'user_hover'
], [
'entity' => $user,
]);
$params = menus_api_prepare_params('user_hover', ['entity' => 'user]);
$items = menus_api_get_menu('user_hover', $params);
$item = ElggMenuItem::factory([
'name' => 'messages',
'text' => 'New messages',
'href' => '/messages',
'data' => [
'indicator' => 5,
'icon' => 'envelope',
'require' => ['js/menu/module'],
]
]);
echo menus_api_view_menu('user_hover', [
'entity' => $user,
'sections' => ['admin', 'action'],
'sort_by' => 'priority',
]);
You can break down child menus into subsections, and list them in a predefined order.
$parent = ElggMenuItem::factory([
'name' => 'parent',
'text' => 'Parent',
'data' => [
'subsections' => ['actions', 'admin']
]
]);
$item = ElggMenuItem::factory([
'name' => 'action',
'parent_name' => 'parent',
'text' => 'Action',
'data' => [
'subsection' => 'actions'
]
]);
- This plugin replaces the default menu, section and item views