# WP_Admin_Bar: Обзор
WP_Admin_Bar — это основной класс, используемый для реализации API панели инструментов в WordPress. Этот класс позволяет добавлять элементы в админ-панель, создавая удобный интерфейс для пользователей.
## Хуки из класса
- admin_bar_init — срабатывает при инициализации панели инструментов.
- add_admin_bar_menus — используется для добавления меню в панель инструментов.
## Использование
Чтобы воспользоваться классом WP_Admin_Bar, необходимо создать его экземпляр:
```php
$WP_Admin_Bar = new WP_Admin_Bar();
// используйте методы класса
Методы класса
Вот основные методы класса WP_Admin_Bar:
public _bind()public _get_node( $id )public _get_nodes()public _render( $root )public _render_container( $node )public _render_group( $node, $menu_title = false )public _render_item( $node )public _set_node( $args )public _unset_node( $id )public add_group( $args )public add_menu( $node )public add_menus()public add_node( $args )public get_node( $id )public get_nodes()public initialize()public recursive_render( $id, $node )public remove_menu( $id )public remove_node( $id )public render()
Примеры использования
Пример 1: Инициализация класса
Вот простой пример функции, которая инициализирует админ-панель. Этот код добавляет панель инструментов и делает её доступной в глобальной области видимости:
function _wp_admin_bar_init() {
global $wp_admin_bar;
if ( ! is_admin_bar_showing() )
return false;
require_once ABSPATH . WPINC . '/class-wp-admin-bar.php';
$admin_bar_class = apply_filters( 'wp_admin_bar_class', 'WP_Admin_Bar' );
if ( class_exists( $admin_bar_class ) )
$wp_admin_bar = new $admin_bar_class;
else
return false;
$wp_admin_bar->initialize();
$wp_admin_bar->add_menus();
return true;
}
Пример 2: Добавление элементов в панель инструментов
Чтобы добавить ссылки в панель инструментов, используйте метод add_menu() или его аналог add_node() вместе с событием admin_bar_menu. Например, добавим ссылку и дочернюю ссылку в панель:
add_action( 'admin_bar_menu', 'my_admin_bar_menu', 30 );
function my_admin_bar_menu( $wp_admin_bar ) {
$wp_admin_bar->add_menu( array(
'id' => 'menu_id',
'title' => 'Внешняя ссылка',
'href' => 'http://example.com',
) );
// дочерняя ссылка
$wp_admin_bar->add_menu( array(
'parent' => 'menu_id', // ID родительской ссылки
'id' => 'some_id', // ваш ID для дочерней ссылки
'title' => 'Дочерняя ссылка',
'href' => 'http://example.com/subpage',
) );
}
Изменение позиции элемента меню
Чтобы изменить порядок элементов, вы можете переместить их перед или после других элементов. Чем меньше приоритет, тем левее (ближе к началу) будет находиться элемент.
Примечания
Для получения дополнительной информации о работе с панелью инструментов рекомендуется изучить статьи на темы использования admin_bar и других связанных функций.
Изменения
- Версия 3.1.0: был представлен класс WP_Admin_Bar.