Cum pot afișa meniuri diferite pentru pagini diferite?
Am un site web care are un meniu principal (orizontal-sus) astfel:
Meniu principal
- Acasă
- Despre noi
- Contact
Pe pagina principală am un link către pagina "Companie" astfel www.xyz.com/company.
Când sunt pe această pagină de companie vreau ca site-ul meu să schimbe elementele din meniu și să folosească acestea:
Meniu diferit
- Acasă (același link către pagina principală care va duce utilizatorul la www.xyz.com)
- Promoteri
- Galerie
- Hărți
Cred că pot face acest lucru folosind Conditional_Tags din WordPress, dar nu știu exact de unde să încep.

Puteți încerca în felul acesta. Acum vorbim despre pagini, puteți seta un șablon separat pentru pagina care necesită un meniu diferit. Aici funcționalitatea mai nouă a WordPress pentru meniuri este foarte utilă.
În primul rând, dacă utilizați funcționalitatea mai nouă pentru meniuri din WordPress, plasați acest cod în locul meniului curent:
<?php wp_nav_menu( array( 'container_class' => 'menu-header', 'theme_location' => 'primary' ) ); ?>
Apoi, puneți acest cod în partea de sus a fișierului de șablon pe care îl veți utiliza pentru pagină. Acesta informează WordPress că acesta este un șablon de pagină.
<?php
/*
Template Name: Denumiți șablonul aici
*/
?>
Apoi, plasați acest cod în șablonul dumneavoastră unde ar trebui să apară meniul pentru acest șablon:
<?php wp_nav_menu( array( 'container_class' => 'menu-header', 'theme_location' => 'template_menu' ) ); ?>
Acum trebuie să ne asigurăm că acestea vor fi activate. În fișierul functions.php al temei dumneavoastră, va trebui să plasați acest cod:
// Această temă utilizează wp_nav_menu() în două locații.
register_nav_menus( array(
'primary' => __( 'Navigare Principală', 'numele_temei_dvs' ),
'template_menu' => __('Navigare Șablon', 'numele_temei_dvs')
) );
Odată ce toate acestea sunt făcute, tot ce trebuie să faceți este să mergeți în panoul de administrare > Aspect > Meniuri și să creați meniurile acolo. După creare, salvați, iar în partea stângă vă va oferi opțiunea de a alege unde să plasați fiecare meniu prin intermediul meniurilor derulante.
După ce toate acestea sunt configurate, atunci când creați o pagină nouă, tot ce trebuie să faceți este să selectați șablonul pe care doriți să-l utilizați.
Sper că acest lucru vă ajută. Dacă aveți întrebări, nu ezitați să întrebați.

Meniu diferit pe diferite pagini folosind câmp personalizat în pagină --> functions.php
function shortcode_nav_menu_args( $args = '' ) {
//dacă există câmpul personalizat cp_menu în pagină, obține ID-ul meniului (număr)
//altfel obține meniul implicit
$menu = get_post_meta(get_the_ID(), 'cp_menu', true);
if(isset($menu)) {
$args['menu'] = $menu;
}
return $args;
}
add_filter( 'wp_nav_menu_args', 'shortcode_nav_menu_args' );

Puteți utiliza plugin-ul gratuit Conditional Menus. Îl folosesc în proiectele mele și funcționează întotdeauna perfect!

Etichetele condiționale ar fi probabil soluția. Cum apelezi meniul tău? Presupun că folosești wp_list_pages()
?
Dacă da, poți utiliza argumentul exclude
, folosind ceva similar cu codul de mai jos (evident, ajustează numerele paginilor și etichetele condiționale după nevoile tale) -
<?php
if(is_front_page()) :
$exclude = '10,11,12';
elseif(is_page(15)) :
$exclude = '1,2,3';
endif;
wp_list_pages('title_li=&depth=1&exclude=' . $exclude);
?>

Există un plugin pentru asta care pare promițător.
