Vorläufige Lösung
Ich habe nun eine Lösung programmiert. Überzeugt bin ich von ihr aber nicht.
Das Untermenü ist nun abhängig von dem Hauptmenü, der Kategorieseite oder der Kategorie des Beitrags.
PHP
$args = array(
'container_class' => 'menu-secondary-container'
);
// Decides which sub menu is used. It depends on the main menu or the actual category
if(get_the_title() === 'Seite1'){
$args['menu'] = 'Untermenu1';
wp_nav_menu($args);
}elseif(get_the_title() === 'Seite2'){
$args['menu'] = 'Untermenu2';
wp_nav_menu($args);
}elseif(get_the_title() === 'Seite3'){
$args['menu'] = 'Untermenu3';
wp_nav_menu($args);
}else{
// Find the menu for the current category
// Get through the menus
foreach((array) wp_get_nav_menus() as $key => $nav_menu){
// Get through the menu items
foreach((array) wp_get_nav_menu_items($nav_menu->term_id) as $key => $menu_item){
//Is the current site a post?
if(is_single()){
// Find the menu for a post category
foreach(get_the_category() as $key => $category){
if($category->cat_ID === $menu_item->object_id){
$args['menu'] = $nav_menu->name;
wp_nav_menu($args);
break 3;
}
}
}else{
if(get_cat_ID( single_cat_title("",false) ) === $menu_item->object_id){
$args['menu'] = $nav_menu->name;
wp_nav_menu($args);
break 2;
}
}
}
}
}
Alles anzeigen
Wenn jemand Verbesserungsvorschläge hat, nur zu!