Добавляем пользовательские поля в меню WordPress: новые возможности и плагины

В WordPress 5.4 появились новые хуки, которые значительно расширяют возможности настройки меню WP Nav Menu. Теперь, помимо стандартных опций, можно легко добавлять пользовательские поля, делая меню более функциональным и информативным.

Зачем нужны пользовательские поля в меню?

С помощью пользовательских полей можно:

  • Добавлять к пунктам меню дополнительные сведения, например, описание, иконку, цвет фона.
  • Создавать более сложные системы навигации, например, выпадающие меню с категориями товаров.
  • Интегрировать меню с другими плагинами, например, с плагином для онлайн-заказа.

Как добавить пользовательские поля в меню?

Есть два способа добавить пользовательские поля в меню:

1. С помощью хука wp_nav_menu_item_custom_fields

Этот хук позволяет добавить дополнительные поля к форме редактирования пункта меню.

Пример:

PHP

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:

  1. Перейдите в раздел «Пользовательские поля».
  2. Добавьте новое поле.
  3. Выберите тип поля (например, текст, изображение, ссылка).
  4. В поле «Правила расположения» выберите «Элемент меню».
  5. Сохраните поле.

Плагин WP Menu Custom Fields:

  1. Перейдите в раздел «Внешний вид» -> «Меню».
  2. Выберите пункт меню, к которому хотите добавить поле.
  3. Нажмите кнопку «Добавить поле».
  4. Выберите тип поля (например, текст, изображение, шорткод).
  5. Введите значение поля.
  6. Сохраните изменения.

Заключение

Добавление пользовательских полей в меню WordPress — это отличный способ сделать меню более функциональным и информативным.

Вы можете использовать хук wp_nav_menu_item_custom_fields или один из плагинов, чтобы добавить необходимые поля к пунктам меню.

P.S.

В этой статье я рассмотрел только базовые возможности добавления пользовательских полей в меню.

С помощью хуков и плагинов можно сделать гораздо больше, например, добавить к пунктам меню категории, теги, произвольные поля, изображения и т.д.

Оцените статью