Изменить html в WordPress 6
Столкнулся с такой проблемой, вывожу у себя на страничке меню.
wp_nav_menu(array(
'theme_location' => 'header_menu',
'container' => 'ul',
'menu_class' => 'navbar-nav',
'menu_id' => 'headerMenu'
));
Выводится оно в таком html формате.
<ul id="headerMenu" class="navbar-nav"><li class="page_item page-item-12"><a href="https://wordpres-dev.loc/index.php/%d0%b3%d0%bb%d0%b0%d0%b2%d0%bd%d0%b0%d1%8f-%d1%81%d1%82%d1%80%d0%b0%d0%bd%d0%b8%d1%86%d0%b0/">Главная страница</a></li>
<li class="page_item page-item-2"><a href="https://wordpres-dev.loc/index.php/sample-page/">Sample Page</a></li>
<li class="page_item page-item-3"><a href="https://wordpres-dev.loc/index.php/privacy-policy/">Privacy Policy</a></li>
</ul>
Подскажите как сделать так чтобы выводилось просто вот так.
<ul id="headerMenu" class="navbar-nav">
<li class="my-class"><a class="nav-link" href="https://wordpres-dev.loc/">Главная страница</a></li>
<li class="my-class"><a class="nav-link" href="https://wordpres-dev.loc/index.php/sample-page/">Sample Page</a></li>
<li class="my-class"><a class="nav-link" href="https://wordpres-dev.loc/index.php/privacy-policy/">Privacy Policy</a></li>
</ul>
Уже два часа ищу в гугле варианты ничего нет.
Ответы (1 шт):
Автор решения: Anatoly Dekhtyar
→ Ссылка
Сделал так. Не знаю правильно ли но работает.
class Simple_Walker_Nav_Menu extends Walker_Nav_Menu {
function start_el(&$output, $item, $depth = 0, $args = null, $id = 0) {
$output .= '<li class="nav-item"><a class="nav-link" href="' . esc_url($item->guid) . '">' . esc_html($item->post_title) . '</a></li>';
}
}
wp_nav_menu(array(
'theme_location' => 'header_menu',
'menu_class' => 'navbar-nav',
'walker' => new Simple_Walker_Nav_Menu(),
'container' => 'ul',
));