string, 'child' => string|null] */ function detectActiveMenu($activeLink, $menus, $gabary) { // LOG SIMPLIFIÉE ET FIABLE : // 1. ACCUEIL = TOUJOURS menu 0 (priorité absolue) if ($activeLink == 'Accueil') { return ['parent' => '0', 'child' => null]; } // 2. Recherche dans les autres menus foreach ($menus as $key0 => $menuParent) { $menuChildren = $gabary->get_menus_by_parent_code($menuParent['vue']); // Vérifier chaque enfant foreach ($menuChildren as $key1 => $menuChild) { $childLink = explode('/', $menuChild['lienMenu'])[0] ?? ''; if ($childLink == $activeLink) { return ['parent' => (string)$key0, 'child' => (string)$key1]; } } } // 3. Fallback : premier menu return ['parent' => '0', 'child' => null]; } // ============================================ // UTILISATION - REMPLACE VOTRE CODE ACTUEL // ============================================ $menuData = detectActiveMenu($activeLink, $menus, $gabary); $activeParentId = $menuData['parent']; $activeChildId = $menuData['child']; // Pour le débogage echo ""; ?>