From 3f135ebc251b39523a99aab54adb8caac84a2ae9 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Tue, 28 Feb 2023 14:41:24 +0800 Subject: [PATCH] * Change the order of the custom navigation. --- module/dev/model.php | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/module/dev/model.php b/module/dev/model.php index 07dd8e0cf2..b48be083ad 100644 --- a/module/dev/model.php +++ b/module/dev/model.php @@ -340,11 +340,33 @@ class devModel extends model else { $menus = ($type == 'third' and isset($defaultLang->$module->menu->{$method}['subMenu'])) ? $defaultLang->$module->menu->{$method}['subMenu'] : $defaultLang->mainNav; + $menus = $this->sortMenus($menus); } return $menus; } + /** + * Sort menus. + * + * @param array|object $menus + * @access public + * @return array + */ + public function sortMenus($menus) + { + if(!is_array($menus)) $menus = (array)$menus; + if(!isset($menus['menuOrder'])) return $menus; + $sortedMenus = array(); + $menuOrders = $menus['menuOrder']; + ksort($menuOrders); + foreach($menuOrders as $menuKey) + { + if(isset($menus[$menuKey])) $sortedMenus[$menuKey] = $menus[$menuKey]; + } + return $sortedMenus; + } + /** * Get original lang. * @@ -789,6 +811,7 @@ class devModel extends model public function getLinkTitle($menus) { $linksTitle = array(); + $menus = $this->sortMenus($menus); foreach($menus as $menuKey => $menu) { if(is_array($menu) and !isset($menu['link'])) continue;