В WordPress 5.4 появились новые хуки, которые значительно расширяют возможности настройки меню WP Nav Menu. Теперь, помимо стандартных опций, можно легко добавлять пользовательские поля, делая меню более функциональным и информативным.
Зачем нужны пользовательские поля в меню?
С помощью пользовательских полей можно:
- Добавлять к пунктам меню дополнительные сведения, например, описание, иконку, цвет фона.
- Создавать более сложные системы навигации, например, выпадающие меню с категориями товаров.
- Интегрировать меню с другими плагинами, например, с плагином для онлайн-заказа.
Как добавить пользовательские поля в меню?
Есть два способа добавить пользовательские поля в меню:
1. С помощью хука wp_nav_menu_item_custom_fields
Этот хук позволяет добавить дополнительные поля к форме редактирования пункта меню.
Пример:
add_action( 'wp_nav_menu_item_custom_fields', 'my_custom_nav_menu_fields', 10, 2 );
function my_custom_nav_menu_fields( $item_id, $item ) {
// Добавляем поле для ввода описания
?>
<p>
<label for="menu-item-description-<?php echo $item_id; ?>">Описание:</label>
<input type="text" id="menu-item-description-<?php echo $item_id; ?>" name="menu-item-description" value="<?php echo esc_attr( get_post_meta( $item_id, '_menu_item_description', true ) ); ?>" />
</p>
<?php
}
2. С помощью плагинов
Существует несколько плагинов, которые позволяют добавить пользовательские поля в меню без написания кода.
Вот несколько популярных плагинов:
- Advanced Custom Fields
- WP Menu Custom Fields
- Menu Item Custom Fields
Использование плагинов
После установки и активации плагина, вам нужно будет добавить необходимые поля к пунктам меню.
Пример:
Плагин Advanced Custom Fields:
- Перейдите в раздел «Пользовательские поля».
- Добавьте новое поле.
- Выберите тип поля (например, текст, изображение, ссылка).
- В поле «Правила расположения» выберите «Элемент меню».
- Сохраните поле.
Плагин WP Menu Custom Fields:
- Перейдите в раздел «Внешний вид» -> «Меню».
- Выберите пункт меню, к которому хотите добавить поле.
- Нажмите кнопку «Добавить поле».
- Выберите тип поля (например, текст, изображение, шорткод).
- Введите значение поля.
- Сохраните изменения.
Заключение
Добавление пользовательских полей в меню WordPress — это отличный способ сделать меню более функциональным и информативным.
Вы можете использовать хук wp_nav_menu_item_custom_fields
или один из плагинов, чтобы добавить необходимые поля к пунктам меню.
P.S.
В этой статье я рассмотрел только базовые возможности добавления пользовательских полей в меню.
С помощью хуков и плагинов можно сделать гораздо больше, например, добавить к пунктам меню категории, теги, произвольные поля, изображения и т.д.