0
add_filter('wp_nav_menu_items', 'add_custom', 10, 2);
function add_custom($items, $args) {
  if ($args->theme_location == 'primary') {
    $items .= '<li class="custom"></li>';
  }
  return $items;
}

これは以下を生成します:

<ul id="menu-top">
    <li></li>
    <li></li>
    <li></li>
    <li class="custom"></li> /* added custom HTML */
<ul>

しかし、WP メニューに「theme_location」がない場合はどうなりますか? 「theme_location」の代わりに id/class でメニューをターゲットにすることはできますか? または、特定のメニューに HTML を追加するにはどうすればよいですか?

4

2 に答える 2