wp_nav_menu_(menu_slug)_items хук-фільтрWP 3.0.0

Дозволяє змінити вже згенерований HTML код пунктів кожного меню окремо на підставі його slug .

Через фільтр проходить приблизно такий вміст:

<li id="menu-item-265" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-265">
	<a href="http://wp-test.ru/post-99">Зворотній зв'язок</a>
</li>
<li id="menu-item-266" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-266">
	<a href="http://wp-test.ru/post-98">Всі статті</a>
</li>
<li id="menu-item-267" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-267">
	<a href="http://wp-test.ru/post-97">Мапа сайту</a>
</li>

Використання

add_filter( 'wp_nav_menu_(menu_slug)_items', 'wp_kama_nav_menu_slug_items_filter', 10, 2);

/**
 * Function for `wp_nav_menu_(menu_slug)_items` filter-hook.
 *
 * @param string $items HTML content list для menu items.
 * @param stdClass $args An object containing wp_nav_menu() arguments.
 *
 * @return string
 */
function wp_kama_nav_menu_slug_items_filter( $items, $args ){

	// Filter...
	return $items;
}
$items
(рядок)
HTML-код пунктів конкретного меню.
$args
(stdClass)
Об’єкт із параметрами, переданими функції
wp_nav_menu() .

Приклади

0

#1 Додамо форму пошуку в меню

Нехай меню має назву “Моє меню”, тоді назва фільтра буде:

// Без плагіна транслітерації
wp_nav_menu_%d0%bc%d0%be%d1%91-%d0%bc%d0%b5%d0%bd%d1%8e_items

// З плагіном транслітерації
wp_nav_menu_moyo-menyu_items

Додамо в меню slug = moyo-menyuформу пошуку:

add_filter( 'wp_nav_menu_moyo-menyu_items', 'change_nav_my_menu_items', 10, 2);

function change_nav_my_menu_items( $items, $args ) {
	$items .= '<li>' . get_search_form(false). '</li>';

	return $items;
}

список змін

З версії 3.0.0Введено.

Де викликається хук

Де використовується хук у WordPress

Використання не знайдено.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *