Создал расширенный класс walker_nav_menu для wp_nav_menu (), где играется с функциями start_el или end_lvl.
Моя функция end_lvl, похоже, не запускается или что-то, как вы видите в коде ниже. В список следует добавить дополнительный элемент, содержащий языковую панель для переключения между двумя языками.
Можете ли вы сказать мне, что я делаю не так?
Код в файле function.php
Код: Выделить всё
class BS5_MainMenu extends Walker_Nav_Menu
{
public function start_el(&$output, $data_object, $depth = 0, $args = null, $current_object_id = 0)
{
$item = $data_object; // use more descriptive name for use within this method.
$frontpageID = get_option('page_on_front');
if ($item->post_parent != 0 || $item->ID == $frontpageID) {
return;
}
$itemUrl = get_permalink($item);
$children = $this->getChildren($item->ID);
$_liCssClass = "nav-item";
$_aCssClass = "nav-link";
if (count($children)) {
$_liCssClass .= " dropdown";
$_aCssClass .= " dropdown-toggle";
}
$output .= '[*]';
if (!empty($itemUrl) && $itemUrl != '#') {
$output .= '[url=/index.html]
[img]
Подробнее здесь: [url]https://stackoverflow.com/questions/79250760/trouble-customizing-walker-nav-menu-for-bs5-navbar[/url]
Мобильная версия