public function getUnpreparedMenu($name, array $params = [])
{
$menus = $this->config->getVolatile('menus');
$items = $this->prepareMenuItems(elgg_extract('items', $params, []));
unset($params['items']);
if ($menus && isset($menus[$name])) {
$registered_items = elgg_extract($name, $menus, []);
$items = array_merge($items, $registered_items);
}
$params['name'] = $name;
$params = $this->hooks->trigger('parameters', "menu:{$name}", $params, $params);
if (!isset($params['sort_by'])) {
$params['sort_by'] = 'priority';
}
$items = $this->hooks->trigger('register', "menu:{$name}", $params, $items);
return new UnpreparedMenu($params, $items);
}