Как я могу добавить 'nav_menu_link_attributes' Wordpress в определенное меню? - PullRequest
0 голосов
/ 08 апреля 2019

Я работаю над сайтом Wordpress, на котором настроено несколько меню.Я хотел добавить пользовательские атрибуты к пунктам меню в одном из меню, используя nav_menu_link_attributes, но это добавляет атрибуты ко всем меню.Как бы я ограничил это только одним конкретным меню?Я не могу найти никакой документации по этому вопросу.

Мой текущий код:

function add_menu_atts($atts){
  $atts['data-inventory-link'] = $atts['href'];
  $atts['data-model'] = $atts['title'];
  return $atts;
}
add_filter('nav_menu_link_attributes', 'add_menu_atts');

Спасибо заранее!

1 Ответ

1 голос
/ 08 апреля 2019

Фильтр, который вы используете nav_menu_link_attributes, поддерживает и другие аргументы.Вы можете передать второй параметр $item и третий параметр $args, который содержит сведения об элементе.Попробуйте что-то вроде этого:

function add_menu_atts($atts, $item, $args){
  // your check for primary menu location
  if( $args->theme_location == 'primary' ) {
    $atts['data-inventory-link'] = $atts['href'];
    $atts['data-model'] = $atts['title'];
  }     

  return $atts;
}
add_filter('nav_menu_link_attributes', 'add_menu_atts', 10, 3);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...