I have different 5 page templates and 5 nav-menus. How can I get different nav-menus according to page template? I used like this. But it shows all menus.
<?php wp_nav_menu( array('menu' => 'Ana Menü - Genel' )); ?>
<?php wp_nav_menu( array('menu' => 'Ana Menü - Lise' )); ?>
<?php wp_nav_menu( array('menu' => 'Ana Menü - Ortaokul' )); ?>
<?php wp_nav_menu( array('menu' => 'Ana Menü - İlkokul' )); ?>
<?php wp_nav_menu( array('menu' => 'Ana Menü - Anaokulu' )); ?>
You can add a condition for every page template using WP get_the_ID() method. By this method you can get id of your page and add their condition on every template. Like:
$id = get_the_ID();
if($id==1){ wp_nav_menu( array('menu' => 'Ana Menü - Genel' )); }
else if($id==2) { wp_nav_menu( array('menu' => 'Ana Menü - Lise' )); }
else if($id==3) { wp_nav_menu( array('menu' => 'Ana Menü - Ortaokul' )); }
else if($id==4) { wp_nav_menu( array('menu' => 'Ana Menü - İlkokul' )); }
else if($id==5) { wp_nav_menu( array('menu' => 'Ana Menü - Anaokulu' )); }
else { //add here that menu function which you want to show for all other remaining page
}`
<?php
if (is_page('page_name')){
wp_nav_menu( array('menu' => 'Ana Menü - Genel' ));
}
else if (is_page('page_name2')) {
wp_nav_menu( array('menu' => 'Ana Menü - Lise' ));
}
else if (is_page('page_name3')) {
wp_nav_menu( array('menu' => 'Ana Menü - Ortaokul' ));
}
else if (is_page('page_name4')) {
wp_nav_menu( array('menu' => 'Ana Menü - İlkokul' ));
}
else if (is_page('page_name4')) {
wp_nav_menu( array('menu' => 'Ana Menü - Anaokulu' ));
}
?>