Back to Multilanguage class

Method getSiteHomePages

public static array
getSiteHomePages
(\Joomla\Database\DatabaseInterface $db = null)
Method to return a list of language home page menu items.
Parameters
  • \Joomla\Database\DatabaseInterface $db The database
Returns
  • array of menu objects.
Since
  • 3.5
Class: Multilanguage
Project: Joomla

Method getSiteHomePages - Source code

/**
 * Method to return a list of language home page menu items.
 *
 * @param   DatabaseInterface  $db  The database
 *
 * @return  array of menu objects.
 *
 * @since   3.5
 */
public static function getSiteHomePages(DatabaseInterface $db = null)
{
    // To avoid doing duplicate database queries.
    static $multilangSiteHomePages = null;
    if (!isset($multilangSiteHomePages)) {
        // Check for Home pages languages.
        $db = $db ?: Factory::getDbo();
        $query = $db->getQuery(true)->select([$db->quoteName('language'), $db->quoteName('id')])->from($db->quoteName('#__menu'))->where([$db->quoteName('home') . ' = ' . $db->quote('1'), $db->quoteName('published') . ' = 1', $db->quoteName('client_id') . ' = 0']);
        $db->setQuery($query);
        $multilangSiteHomePages = $db->loadObjectList('language');
    }
    return $multilangSiteHomePages;
}