Как сделать текущую страницу (ссылку) в меню неактивной?
Подскажите, пожалуйста, способ сделать так, чтобы в меню ссылка на текущую страницу становилась неактивной или чтобы просто удалить ссылку (тег A). Допустим, есть у нас виджет с произвольным меню, или просто главное меню на сайте:
- О компании
- Статьи
- Всякое-разное
- Контакты
По умолчанию все пункты кликабельны.
Переходим в раздел "Статьи" - все пункты меню остаются кликабельны, а пункт "Статьи" становится просто текстом, ну еще и выделенным жирным хорошо бы.
Еще скажу по-другому, нужно чтобы ссылка меню не ссылалась на себя.
Как это можно реализовать в вордпрессе?
Не нужно редактировать файлы самого WordPress. Используйте код в шаблоне, например, в sidebar.php или куда вы хотите вывести меню.
Я бы посоветовал использовать CSS, потому что, возможно, это проще. Как пример
Ура! Сработало! Действительно очень простое решение. Спасибо!
Так будет более точечно...
Можно сделать так.
Получаете код меню, как он там у вас получается. Далее у всех функций для элементов есть css классы. У текущего пункта будет
current-menu-item
, если используется wp_nav_menu(). Вот на основе этого класса можно убрать тег А и заменить его на что угодно.Допустим у нас есть такой код на выходе:
Первая ссылка активная, заменим её на strong:
Получим такой HTML:
Спасибо огромное! Мне нужен был именно этот способ, не скрывать ссылку с помощью css, а полностью ее удалить.
Вот простое, лаконичное и логичное решение.
В пользовательских ссылках вместо ссылки прописываем
#
. А в CSS используем селектор атрибутов и свойствоpointer-events
:И наслаждаемся своей работой.