System menu WordPress ma wbudowaną funkcję, w której można dodawać opisy z elementami menu. Ta funkcja jest jednak domyślnie ukryta. Nawet jeśli jest włączona, wyświetlanie ich nie jest obsługiwane bez dodania kodu. Większość motywów nie jest zaprojektowana z myślą o opisach elementów menu. W tym artykule pokażemy, jak włączyć opisy menu w WordPress i jak dodać opisy menu w swoich motywach WordPress.

How to add menu descriptions in WordPress themes

Uwaga: ten poradnik wymaga uczciwego zrozumienia HTML, CSS i tworzenia motywów WordPress.

Kiedy i dlaczego warto dodawać opisy Menu?

Niektórzy użytkownicy uważają, że dodanie opisu menu pomoże w SEO. Uważamy jednak, że głównym powodem, dla którego chcesz z nich korzystać, jest zaoferowanie lepszego doświadczenia użytkownika na swojej stronie.

Opisy mogą być używane, aby powiedzieć odwiedzającym, co znajdą, jeśli klikną na element menu. Intrygujący opis przyciągnie więcej użytkowników do klikania w menu.

Menu Descriptions

Krok 1: Włącz opisy Menu

Przejdź do Wygląd ” Menu. Kliknij na Opcje Ekranu przycisk w prawym górnym rogu strony. Sprawdź Opisy pudełko.

Enabling menu descriptions in WordPress

Spowoduje to włączenie pola opisy w elementach menu. O tak.:

Description field added to menu items

Teraz możesz dodać opisy menu do elementów w menu WordPress. Jednak te opisy nie będą jeszcze wyświetlane w Twoich motywach. Aby wyświetlić opisy menu będziemy musieli dodać trochę kodu.

Krok 2: Dodaj klasę Walkera:

Klasa Walker rozszerza istniejącą klasę w WordPress. Po prostu dodaje wiersz kodu, aby wyświetlić opisy elementów menu. Dodaj ten kod do motywu funkcje.php plik.

class Menu_With_Description extends Walker_Nav_Menu {
	function start_el (&$output, $item, $depth, $args) {
		global $wp_query;
		$indent = ( $depth ) ? str_repeat( "t", $depth ) : ";
		
		$class_names = $value=";

		$classes = empty( $item->classes ) ? array (): (array) $item - >classes;

		$class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter ($classes), $item));
		$class_names = ' class="' . esc_attr ($class_names ) . '"';

		$ wyjście .= $ indent . '<li id = " menu-item -". $item->ID . '"' . $wartość . $class_names .'>';

		$atrybuty = ! empty( $item->attr_title ) ? "title="" esc_attr ($item->attr_title ) .'"' : '';
		$ atrybuty .= ! empty ($item->target ) ? / target="" esc_attr ($item->target ) .'"' : '';
		$ atrybuty .= ! empty( $item->xfn ) ? "rel="". esc_attr ($item->xfn ) .'"' : '';
		$ atrybuty .= ! empty ($item - > url)? 'href="'. esc_attr ($item->url ) .'"' : '';

		$item_output = $args - > before;
		$item_output .= "<a", $ atrybuty .'>';
		$item_output .= $args - >link_before . apply_filters ('the_title', $item - > title, $item - > ID). $args- > link_after;
		$item_output .= '<br / > <span class = "sub">'. $pozycja->opis . '</span>';
		$item_output .= "</a>",;
		$item_output .= $args - > after;

		$ wyjście .= apply_filters ('walker_nav_menu_start_el', $item_output, $item, $depth, $args );
	}
}

Punkt 3. Włącz Walker w wp_nav_menu

Motywy WordPress używają funkcji wp_nav_menu () do wyświetlania menu. Opublikowaliśmy również samouczek dla początkujących o tym, jak dodać niestandardowe menu nawigacji w motywach WordPress. Większość motywów WordPress dodaje menu w nagłówek.php szablon. Możliwe jednak, że Twój motyw mógł użyć innego pliku szablonu do wyświetlania menu.

Teraz musimy znaleźć wp_nav_menu() funkcja w Twoim temacie (najprawdopodobniej w nagłówku.php) i zmienić to w ten sposób.


<?php $walker = new Menu_With_Description;?>

<?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'NAV-menu', 'walker' = > $walker));?>

W pierwszej linii ustawiamy $ walker aby użyć klasy walker zdefiniowaliśmy wcześniej w funkcje.php. W drugiej linii kodu jedynym dodatkowym argumentem, który musimy dodać do naszych istniejących argumentów wp_nav_menu, jest 'walker' = > $walker.

Punkt 4. Stylizacja opisów

Klasa walker, którą dodaliśmy wcześniej, wyświetla opisy elementów w tej linii kodu:

$item_output .= '<br / > <span class = "sub">'. $pozycja->opis . '</span>';

Powyższy kod dodaje podział linii do pozycji menu poprzez dodanie
taguj, a następnie zawijaj swoje opisy w span z class sub. O tak.:

< li id = "menu-item-99" class = "menu-item menu-item-type-post_type menu-item-object-page"><a href="http://www.example.com/about /">o<br / ><span class="sub" > kim jesteśmy?< / span> < /a>< / li>

Aby zmienić sposób wyświetlania opisów w witrynie, możesz dodać CSS do arkusza stylów szablonu. Testowaliśmy to na dwudziestu Dwunastu i użyliśmy tego css.

.menu-item {
border-left :1px solid # ccc;
}

span.sub { 
font-style: italic;
font-size: small;
}

Mamy nadzieję, że ten artykuł okaże się przydatny i pomoże Ci stworzyć fajne menu z opisami menu w Twoim motywie. Pytania? Zostaw je w komentarzach poniżej.

Dodatkowe Zasoby

Jak stylizować menu nawigacji WordPress

Jak dodać niestandardowe elementy do konkretnych menu WordPress

Menu Billa Ericksona z klasą opisu

You May Also Like

Czym jest Nightografia? Poznaj smartfon Samsung Galaxy S22 5G

W artykule: Nightografia, czyli jak robić zdjęcia nocą telefonemAparat do zdjęć nocnych…

Jak automatycznie publikować na Facebooku z WordPress?

W artykule: Dlaczego automatycznie udostępniać posty WordPress na Facebooku?Automatycznie Publikuj na Facebooku…

Przewodnik dla początkujących: jak opublikować stronę internetową w 2021 roku (krok po kroku)

W artykule: Używanie Kreatora witryn do publikowania witryny1. Opublikuj stronę internetową za…

Com vs Net-Jaka jest różnica między rozszerzeniami domen

W artykule: Czym są rozszerzenia nazw domen. Com I. Net?Różnica między nazwami…