Это можно сделать с помощью пользовательской вспомогательной функции и добавления фильтра в «wp_get_nav_menu_items».Ниже приведена пользовательская вспомогательная функция, которую вы можете использовать.
function _custom_nav_menu_item( $title, $url, $order, $parent = 0 ){
$item = new stdClass();
$item->ID = 1000000 + $order + parent;
$item->db_id = $item->ID;
$item->title = $title;
$item->url = $url;
$item->menu_order = $order;
$item->menu_item_parent = $parent;
$item->type = '';
$item->object = '';
$item->object_id = '';
$item->classes = array();
$item->target = '';
$item->attr_title = '';
$item->description = '';
$item->xfn = '';
$item->status = '';
return $item;
}
И вот как вы можете добавить фильтр.
add_filter( 'wp_get_nav_menu_items', 'your_custom_function', 20, 2 );
function your_custom_function( $items, $menu ){
//your logic and code for customization
return $items;
}
У вас будет собственная логика для определения правильного местоположения.Я успешно использовал это с темой Divi.
Надеюсь, это даст вам хотя бы отправную точку.Что ж, мне интересно, почему вы хотите добавить форму поиска в навигационные меню!
===== Обновление =====
Вы можете настроитьОбертка вашего меню, чтобы добавить что-то еще.Пожалуйста, проверьте эту тему .Это будет полезно для вас.
Также, чтобы включить эту функцию только для мобильной версии, вы можете использовать другой плагин, который обнаруживает мобильные устройства, mobble .
У меня естьЯ использовал этот плагин много раз на многих сайтах, и его результаты достаточно надежны.Вы можете условно включить пользовательскую функциональность, используя функцию «is_mobile ()» из этого плагина, поэтому вам не нужно полагаться на css, чтобы скрыть то же самое на настольных устройствах.