Описание nav_menu_items_{$post_type_name}_recent
— Filter
Хук nav_menu_items_{$post_type_name}_recent позволяет изменять элементы меню, связанные с недавними записями определенного типа записи в WordPress. Он срабатывает при генерации меню, связанного с недавними записями, и позволяет добавлять, изменять или удалять элементы меню, что влияет на навигацию по сайту
Примеры использования
Пример добавления нового элемента в меню недавних записей:
add_filter('nav_menu_items_post_recent', function($items, $args) {
$items[] = array('ID' => 999, 'title' => 'Новая запись', 'url' => 'https://example.com/new-post');
return $items;
});
В этом примере мы добавляем новый элемент меню с ссылкой на новую запись
Пример изменения названия существующего элемента меню:
add_filter('nav_menu_items_post_recent', function($items, $args) {
foreach ($items as &$item) {
if ($item['ID'] == 1) {
$item['title'] = 'Измененное название';
}
}
return $items;
});
Здесь мы изменяем название существующего элемента меню с ID 1
Пример удаления элемента меню:
add_filter('nav_menu_items_post_recent', function($items, $args) {
foreach ($items as $key => $item) {
if ($item['ID'] == 2) {
unset($items[$key]);
}
}
return $items;
});
В этом примере мы удаляем элемент меню с ID 2
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо настроить элементы меню недавних записей для конкретного типа записи
– Производительность
Поскольку хук работает с массивами, важно следить за объемом данных, чтобы избежать проблем с производительностью
– Предупреждения
Убедитесь, что изменения не нарушают логику навигации на сайте и не приводят к путанице для пользователей
Альтернативы
Тип: filter
Этот хук позволяет изменять все элементы меню, а не только недавние записи
Используйте его, если нужно настроить элементы меню более общего характера