private static function getMenuAliases() { $cfgMenuString = ipGetOption('Sitemap.menuList'); if ($cfgMenuString) { $menus = preg_split("/[\\s,]+/", $cfgMenuString); } else { $currLanguage = ipContent()->getCurrentLanguage()->getCode(); $menusObj = \Ip\Internal\Pages\Service::getMenus($currLanguage); $menus = array(); foreach ($menusObj as $menuObj) { $menus[] = $menuObj['alias']; } } return $menus; }
/** * @return mixed */ public static function ipDefaultPageId_70($info) { $languageCode = $info['languageCode']; $defaultPageId = ipGetOption('Config.defaultPageId_' . $languageCode, null); if ($defaultPageId) { return $defaultPageId; } $menus = \Ip\Internal\Pages\Service::getMenus($languageCode); foreach ($menus as $menu) { $pages = \Ip\Internal\Pages\Service::getChildren($menu['id'], 0, 1); if (!empty($pages[0]['id'])) { return $pages[0]['id']; } } return null; }
/** * Get menus of the website. * Menu list may be different on each language. That's why there is $languageCode parameter. * If $languageCode is omitted, current language is used by default. * * @param string $languageCode * @return \Ip\Page[] */ public function getMenus($languageCode = null) { $result = \Ip\Internal\Pages\Service::getMenus($languageCode); $objectArray = array(); foreach ($result as $menuData) { $objectArray[] = new \Ip\Page($menuData); } return $objectArray; }