Back to Menu class

Method menus

public static array
(mixed $clientId = 0)
Get a list of the available menus.
Parameters
  • int $clientId The client id
Returns
  • array
Since
  • 1.6
Class: Menu
Project: Joomla

Method menus - Source code

/**
 * Get a list of the available menus.
 *
 * @param   int  $clientId  The client id
 *
 * @return  array
 *
 * @since   1.6
 */
public static function menus($clientId = 0)
{
    $key = serialize($clientId);
    if (!isset(static::$menus[$key])) {
        $db = Factory::getDbo();
        $query = $db->getQuery(true)->select([$db->quoteName('id'), $db->quoteName('menutype', 'value'), $db->quoteName('title', 'text'), $db->quoteName('client_id')])->from($db->quoteName('#__menu_types'))->order([$db->quoteName('client_id'), $db->quoteName('title')]);
        if (isset($clientId)) {
            $clientId = (int) $clientId;
            $query->where($db->quoteName('client_id') . ' = :client')->bind(':client', $clientId, ParameterType::INTEGER);
        }
        static::$menus[$key] = $db->setQuery($query)->loadObjectList();
    }
    return static::$menus[$key];
}