Может кто-то посоветовать, как можно средствами wordpress создать данное меню:
<nav class="header__nav">
<a class="header__link active" href="#">О компании</a>
<a class="header__link" href="#">Продукты и решения</a>
<a class="header__link" href="#">Услуги</a>
<a class="header__link" href="#">Технологии</a>
<a class="header__link" href="#">Применение</a>
<a class="header__link" href="#">Новости</a>
<a class="header__link" href="#">Контакты</a>
<a class="header__link" href="#">FAQ </a>
</nav>
Проблема в том, что от класса active зависит befor данной кнопки. Я сделан следующий код:
<?php
$defaults = array(
'theme_location' => 'top_menu',
'container' => 'nav',
'container_class' => 'header__nav',
'echo' => false,
'fallback_cb' => false,
'items_wrap' => '%3$s',
'depth' => 0
);
$menu = strip_tags(wp_nav_menu($defaults), '<nav><a>');
$find = array('<a');
$replace = array('<a class="header__link"');
echo str_replace($find, $replace, $menu);
?>
И он на первый взгляд отлично справляется, но вся проблема в том, что я не могу вешать класс active на текущей странице. Это наверняка можно сделать как то с помощью walker, но у меня получалось создать только ссылку внутри li. Но все равно получал не то, что нужно. Так же была мысль сохранять состояние в сессию. Но не знаю как, это сделать на wordpress. Может у кого-то была похожая задача.
Обновлено. Я нашел решение, может кому то пригодится... html:
<?php
$menu_items = wp_get_nav_menu_items( 2 ); // id or name of menu
foreach ( (array) $menu_items as $key => $menu_item ) {
if ( ! $menu_item->menu_item_parent ) {
echo '<a class=" header__link ' . vince_check_active_menu($menu_item) . '" href='.$menu_item->url.'>';
echo $menu_item->title;
echo "</a>";
}
}
?>
function.php
function vince_check_active_menu( $menu_item ) {
$actual_link = ( isset( $_SERVER['HTTPS'] ) ? "https" : "http" ) . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
if ( $actual_link == $menu_item->url ) {
return ' active';
}
return '';
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Такая дилемма: есть 2 проекта на laravel, работают на openserver, и с проекта 1 нужно сделать http запрос на проект 2, про при запросе получается вот такой...
Есть у меня html страница с формами inputС помощью JS у меня генерируются некоторые переменные