wordpressor
  • 0
Эксперт

Главное меню — избавиться от названий?

  • 0

У меня есть главное меню по умолчанию:

wp_nav_menu(); 

Но он дает список ссылок в виде:

(...)
<a href="link" title="PageName">PageName</a>
(...)

Очень важный вопрос, как заставить WP отображать это так:

  (...)
  <a href="link">PageName</a>
  (...)

Мне не нравятся желтые прямоугольники, появляющиеся каждый раз, когда я навожу что-либо в меню.

Я знаю, что это возможно, потому что видел, как это работает, но не знаю, как? Может фильтры? Есть идеи?

Share
  1. Заголовок — это атрибут доступности, который помогает пользователям программ чтения с экрана. Это часть рекомендуемого стандарта WC3 для элементов навигации. Просто подумайте об этом, прежде чем решите избавиться от него, потому что он вас раздражает.

    Вместо того, чтобы изменять код PHP, вы можете подумать об его удалении после загрузки. Это очень легко сделать с помощью jQuery. Сначала добавьте это в свой functions.php файл:

    wp_enqueue_script('jquery');
    

    Затем в свой site.js файл добавьте этот код:

    jQuery (документ).ready (функция ($) {
      $('.nav li a').removeAttr('title');
    }
    
    

    Опять же, я не очень рекомендую делать это, но вот как это сделать.

    • 0
    • это путь! Я больше думал об ответе add_filter(‘nav_menu_css_class’ (…), но он тоже работает. В любом случае для меню требуется JS, поэтому я сделаю это таким образом. Кстати, я совершенно не хочу удалять заголовки, которые я просто не хочу, чтобы при наведении на элементы отображались желтые всплывающие окна. Но я считаю, что это невозможно без избавления от заголовков, верно?

      • 0
    • Это то, что делает браузер. Например, IE будет отображать желтые всплывающие окна, когда для изображения установлен ALT, даже если заголовок не установлен. Другие браузеры обычно показывают всплывающее окно только в том случае, если установлен заголовок. Вы можете подумать о скрипте Greasemonkey (ff) или пользовательском скрипте (chrome), который удалит атрибуты заголовка на любой странице, которую вы просматриваете. Таким образом, вы не будете раздражены, в то время как люди, которые посещают ваш сайт, могут по-прежнему получать выгоду от атрибутов заголовка, к которым они привыкли на большинстве веб-сайтов.

      • 0
    • это хорошо, но мне не подойдет — у меня нет меню в разделе «Меню», то, которое я использую, автоматически генерируется WordPress.

      • 0
    • @WordPressor — Ваш вопрос конкретно касается wp_nav_menu(); . Вы пытаетесь удалить заголовки из результатов резервной функции? (почти уверен, что есть фильтр для резервной функции меню страницы).

      • 0
    • @WordPressor — если вы используете сгенерированные по умолчанию меню, вы можете решить эту проблему, создав явное меню, которое вам, вероятно, потребуется сделать, если только ваш сайт не остается чрезвычайно простым.

      • 0
    • Обратите внимание, что оставление поля пустым в последних версиях больше не скрывает атрибуты заголовка. Он будет повторять любые слова, которые уже есть в ссылке.

      • 0
  2. Я почти уверен, что если вы очистите поле «Атрибут заголовка» в Appearance > Menu редакторе, заголовки будут удалены из ссылок:

    Администратор меню WordPress, показывающий поле атрибута заголовка ссылки

    • 0

Оставить ответ

You must login to add an answer.