Pozdrav,
Ovo je malo specifi?an zahtev. Ti treba?:
- Prikupiti sve page ID u kojima ne ?eli? da prika?e? selektor i definisati u neki array
- Prona?i trenutni page ID i uporediti sa tom listom
- Prona?i po nazivu ili menu item ID selektor i ukloniti ga
To bi kroz algoritam izgledalo ovako:
add_filter('wp_nav_menu_objects', function ($sorted_menu_objects, $args) {
// pogledaj trenutnu stranicu
global $post;
// svi page ID koje ?eli? da filtrira?
$remove_from_pages = [123,456,789]; // koristi inted?ere za ID
// ne filtriraj sve dok ne prona?e? ?to ti treba
if(!in_array($page->ID, $remove_from_pages, true))
return $sorted_menu_objects;
// potra?i odgovaraju?i meni da bi uklonio stavku iz menija
// ovde proveravamo lokaciju teme za 'main-menu' (mora? definisati precizno)
if ($args->theme_location != 'main-menu')
return $sorted_menu_objects;
// ukloni stavku iz menija koja ima naslove 'Latinica' i '?ирилица' (ovo varira od toga kako si je definisao)
foreach ($sorted_menu_objects as $key => $menu_object) {
// Ovde tako?e mo?e? da proveri? URL stranica $menu_object->url za primer
// pogledaj sva pode?avanja koriste?i:
// print_r($menu_object); die();
if (in_array($menu_object->title, ['Latinica', '?ирилица'])) {
unset($sorted_menu_objects[$key]);
break;
}
}
return $sorted_menu_objects;
}, 10, 2);
Ovo nije testirano od moje strane jer sam napisao napamet ali je hook pristup ispravan. Mora?e? se poigrati. Verujem da ?e ti raditi ako samo izmeni? po svojoj temi.