【WordPress】 "Walker_Nav_Menu"の「target="_blank"」について
解決したいこと
WordPressの「Walker_Nav_Menu」にてナビゲーションをカスタマイズしております。
管理画面にて「リンクを新しいタブで開く」にチェックを入れているのですが、target="_blank"が付与されなく、解決方法をご教授いただきたいです。
該当するコード
■function.php
class custom_walker_nav_menu extends Walker_Nav_Menu
{
function start_el(&$output, $item, $depth = 0, $args = array(), $id = 0)
{
$classes = empty($item->classes) ? array() : (array) $item->classes;
$classes[] = 'menu-item-' . $item->ID;
$id = 'menu-item-' . $item->ID;
$css_classes = '';
foreach ($classes as $class) {
$css_classes .= $class . ' ';
}
if ($depth == 0) { //第一階層のときにiタグを付ける
$output .= '<li id="' . $id . '" class="' . $css_classes . '"><a href="' . $item->url . '">' . $item->title . '<i class="js-menuRoot"></i></a>';
} else { //第一階層以外は通常通り
$output .= '<li id="' . $id . '" class="' . $css_classes . '"><a href="' . $item->url . '">' . $item->title . '</a>';
}
}
}
■header.php
<?php
wp_nav_menu(
array(
'depth' => 2,
'theme_location' => 'global',
'container' => 'ul',
'walker' => new custom_walker_nav_menu,
)
);
?>
自分で試したこと
「リンクを新しいタブで開く」にチェックが有る場合は、target="blank"を付与する。
などで解決出来るのかなと思っているのですが、Walker_Nav_Menuがあまり理解できておらず手詰まりの状態です。
ご教授のほどよろしくお願いいたしますm( _)m
0