Dobrze zbudowane, o przemyślanej strukturze menu to jeden warunków sprawnego poruszania się witrynie internetowej.
Nie zawsze jednak chcemy wyświetlać wszystko i wszystkim odwiedzającym. Co ze stronami, które powinni widzieć tylko zalogowani użytkownicy?
I tu z pomocą przychodzi interesująca wtyczka.
If menu (dostępna całkowicie za darmo w repozytorium WordPressa) pozwala na wyświetlanie lub ukrywanie elementów menu, jeśli spełniony jest określony warunek:
Użytkownik jest zalogowany
Użytkownik jest Administratorem
Użytkownik jest Redaktorem
Użytkownik jest Autorem
Użytkownik jest Współpracownikiem
Użytkownik jest Subskrybentem,
Strona główna
Pojedynczy wpis
Strona
Korzystanie z wtyczki rozpoczynamy od wybrania Wygląd -> Menu.
Następnie klikamy interesującą nas pozycję menu (włączamy Conditional LOgic) i określamy warunek, jaki musi zostać spełniony, jeśli element ma być widoczny lub ukryty.
Instrukcje warunkowe pozwalają na zbudowanie w pełni fikcjonalnego niestandardowego menu dla różnych użytkowników witryny, w zależności od ról lub dla konkretnych stron czy wpisów.
Ale, co niezwykle ważne, do wtyczki możemy dodać niemal każdą instrukcję warunkową, jaka jest nam potrzebna.
Dla zaawansowanych: Jak dodać nową instrukcję warunkową?
Przykład dodawania nowej instrukcji warunkowej do ukrywania lub wyświetlania w menu, gdy dotyczy to własnego typu wpisu.
W pliku functions.php naszego motywu dodajemy:
add_filter( 'if_menu_conditions', 'my_new_menu_conditions' );
function my_new_menu_conditions( $conditions ) {
$conditions[] = array(
'name' => 'If single custom-post-type', // name of the condition
'condition' => function($item) { // callback - must return TRUE or FALSE
return is_singular( 'my-custom-post-type' );
}
);
return $conditions;
}
Gdzie można znaleźć inne – możliwe do użycia – funkcje warunkowe?
WordPress oferuje wiele funkcji, które mogą być używane do tworzenia instrukcji warunkowych dla niemal każdej kombinacji, jaką jesteśmy w stanie wymyślić.