Произвольный разделитель в меню WordPress

Ранее я рассказывал о том, как в список страниц вставить произвольный разделитель. Теперь приведу пример, как сделать то же самое при использовании функции wp_nav_menu().

В данном случае все делается по аналогии со страницами. Код выглядит следующим образом:

<?php
	$nav = wp_nav_menu('echo=0');
	$nav = preg_replace('#<li\s(.+)><a\s(.+</a>)</li>#siU', '<a $1 $2', $nav);
	preg_match_all('#(<a.+/a>)#siU', $nav, $matches);
	$nav = implode(' | ', $matches[1]);
	echo $nav;
?>

Вот, собственно, и все.

Комментарии (2)

  1. Дмитрий
    20 июля 2017 г. в 11:18

    Доброе утро !

    Подскажите как все таки добавить слеш/разделитель пунктов меню ? Все перерыл, гугл и яндекс скоро банить начнет

    Хотелось бы реализовать точно такое же меню как на этом сайте fine-gadget.ru/lp. У пунктов меню слеш, а у последнего нет. Возможно ли это сделать на вп ?

    Через “псевдо” after и before пробовал, не подходит т. к. подчеркивается и сам слеш, а заказчик просит убрать это.

    Весь шаблон сверстал и поставил на вп, а вот эта “фишка” ни как не выходит.

    Меню выводится просто функцией wp_nav_menu();

    1. after/before добавляйте к тегу li, а не к ссылке, и не будет никакого подчеркивания.

Ваш комментарий

Жирный текст

Ссылка

Цитата

Внутристрочный код

CSS-код

HTML-код

JavaScript-код

PHP-код