## UNREGISTER_NAV_MENU() │ WP 3.1.0
Функция unregister_nav_menu() испол��зуется для удаления (отмены регистрации) местоположения навигационного меню в теме WordPress.
### Возвращаемое значение
Функция возвращает true в случае успеха и false в случае неудачи.
### Использование
Чтобы использовать эту функцию, вызовите её следующим образом:
```php
unregister_nav_menu( $location );
$location(строка) — обязательный параметр, идентификатор местоположения меню.
Примеры
Простой пример
Допустим, вы хотите удалить ранее зарегистрированное навигационное меню с идентификатором primary. Это нужно сделать на хуке init через поздние вызовы, после всех регистраций.
add_action( 'init', 'theme_register_nav_menu', 20 );
function theme_register_nav_menu() {
unregister_nav_menu( 'primary' );
}
Примечания
- Внутри функции используется глобальный массив
$_wp_registered_nav_menus, который хранит все зарегистрированные места для меню.
Изменения
- С версии 3.1.0 — функция была введена.
Код функции
Ниже приведен код функции unregister_nav_menu(), как он реализован в WordPress:
function unregister_nav_menu( $location ) {
global $_wp_registered_nav_menus;
if ( is_array( $_wp_registered_nav_menus ) && isset( $_wp_registered_nav_menus[ $location ] ) ) {
unset( $_wp_registered_nav_menus[ $location ] );
if ( empty( $_wp_registered_nav_menus ) ) {
_remove_theme_support( 'menus' );
}
return true;
}
return false;
}
Связанные функции
Функция unregister_nav_menu() работает в связке с другими функциями навигационного меню в WordPress:
register_nav_menu()— для регистрации нового меню.has_nav_menu()— проверяет, есть ли зарегистрированное меню для указанного местоположения.wp_nav_menu()— для отображения навигационного меню на сайте.
Эти функции помогут вам более эффективно управлять навигационными меню.