Описание функции unregister_nav_menu()
Функция unregister_nav_menu() используется для удаления ранее зарегистрированного меню навигации. Это может быть полезно, если вы хотите изменить структуру меню или убрать ненужные меню из админки.
Функция должна вызываться во время инициализации темы или плагина, обычно в хуке ‘after_setup_theme’
Параметры
$location
Тип: string
Обязательный: Да
Описание: Уникальный идентификатор меню, которое вы хотите удалить
Возможные значения:
Возвращаемое значение
Тип: void
Описание: Функция ничего не возвращает
Возможные значения:
• Нет возвращаемого значения
Примеры использования
Удаляет основное меню навигации с идентификатором ‘primary’
function my_theme_setup() {
unregister_nav_menu('primary');
}
add_action('after_setup_theme', 'my_theme_setup');
Теперь меню с идентификатором ‘primary’ не будет доступно в админке
Удаляет меню ‘footer-menu’ в контексте плагина
function my_plugin_setup() {
unregister_nav_menu('footer-menu');
}
add_action('after_setup_theme', 'my_plugin_setup');
Используйте это, чтобы убрать ненужное меню в плагине
Безопасность
Валидация входных данных: Строка идентификатора меню должна быть проверена на корректность
Санитизация: WordPress автоматически обрабатывает идентификаторы меню
Рекомендации: Не используйте значения, которые могут быть получены от пользователя без валидации
— Связанные функции
Регистрация нового меню навигации
Получает массив местоположений меню в теме
— Примечания
– Ограничения
Удаление меню не приведет к удалению его содержимого
– Частые проблемы
- Попытка удалить меню, которое не было зарегистрировано, не вызовет ошибок, но меню останется
- Неправильный идентификатор приведет к тому, что меню останется доступным