PHP-функции и ручная интеграция
Функции для вставки мегаменю в шаблоны темы и для чтения настроек плагина из своего кода.
eldermenu() — вывести меню
eldermenu( string $config_id = 'main', array $args = array() )Выводит мегаменю. $args — те же аргументы, что у wp_nav_menu() WordPress: theme_location, menu, echo, container_id и другие.
<?php
// Меню основной конфигурации в области темы primary
eldermenu( 'main', array( 'theme_location' => 'primary' ) );
// Конкретное меню в конфигурации catalog
eldermenu( 'catalog', array( 'menu' => 'Каталог' ) );
// Получить HTML строкой
$html = eldermenu( 'main', array( 'menu' => 165, 'echo' => false ) );Как заменить меню темы вручную
- Найдите в шаблоне темы (чаще всего
header.php) вызовwp_nav_menu( … 'theme_location' => 'primary' … ). Подсказку, из какого файла выводится меню, даёт «Найти backtrace шаблона темы». - Замените его на
<?php eldermenu( 'main', array( 'theme_location' => 'primary' ) ); ?>. - Правьте не саму тему, а дочернюю тему — иначе обновление темы сотрёт изменения.
<?php if ( function_exists( 'eldermenu' ) ) {
eldermenu( 'main', array( 'theme_location' => 'primary' ) );
} else {
wp_nav_menu( array( 'theme_location' => 'primary' ) );
} ?>function_exists() защищает сайт от ошибки, если плагин отключат.eldermenu_toggle() — кнопка мобильного меню
eldermenu_toggle( string $target = '_any_', string $config_id = 'main', bool $echo = true, array $args = array() )| Ключ $args | По умолчанию | Назначение |
|---|---|---|
toggle_content | Menu | текст кнопки; {{menu_title}} заменяется названием меню |
icon_class | bars | иконка Font Awesome |
icon_style | icon | burger — анимированный «бургер» |
tag | a | тег кнопки |
close_icon | bars | times — крестик при открытом меню |
align, content_align | full, left | выравнивание кнопки и текста |
skin, classes, toggle_id | скин, свои классы, ID |
<?php eldermenu_toggle( '_any_', 'main', true, array(
'toggle_content' => 'Каталог',
'icon_style' => 'burger',
'tag' => 'button',
) ); ?>eldermenu_searchbar() — поиск
eldermenu_searchbar( $placeholder = null, $post_type = '', $search_field_id = 'eldermenu-search-field', $search_label_sr = null, $button_text_sr = null, $autofocus = true, $autocomplete = 'on' )Печатает ту же форму, что шорткод [eldermenu-search].
eldermenu_op() — прочитать настройку
eldermenu_op( string $option, string $section, mixed $default = null )$section — идентификатор конфигурации (main, footer…) или general для Общих настроек. $option — ключ настройки; он показан серым в каждой карточке настроек этой документации.
<?php
$skin = eldermenu_op( 'skin', 'main' ); // light, dark, accent, minimal, none
$breakpoint = eldermenu_op( 'responsive_breakpoint', 'general' ); // '' = 959
$sticky_on = eldermenu_op( 'sticky', 'main' ) === 'on';eldermenu_is_mobile()
Обёртка над wp_is_mobile(), через которую плагин решает, мобильное ли устройство, для настроек «Отключить на мобильных». Результат меняется фильтром eldermenu_is_mobile.
Виджет «WP eLDeR MegaMenu Navigation»
В Внешний вид→Виджеты есть виджет, который выводит мегаменю в любой области виджетов темы — удобно для вертикального меню в боковой колонке. В нём выбирается конфигурация и меню, либо область меню темы.
Константы wp-config.php
| Константа | Назначение |
|---|---|
WP_ELDER_MEGAMENU_DEBUG | true — вести журнал плагина в wp-content/wp-elder-megamenu.txt (по просьбе техподдержки) |