サポート » 使い方全般 » カスタムメニューの使い方について

  • 解決済 asako

    (@asako08)


    カスタムメニューを使用して、出力結果を以下のようにしたいと思っています。

    <ul class="globalNav">
    <li><a href="http://foo.com/"><span data-hover="HOME">HOME</span></a></li>
    <li><a href="http://foo.com/sample"><span data-hover="EVENT">EVENT</span></a></li>
    </ul>

    上記のように、data-hover の中にナビゲーションラベルと同じ文字を出力させたいのですが、うまくいかず困っています。
    出力用のコードは以下のように記述しております。

    <?php
    $args = array(
    ‘menu’ => ‘global-navigation’,
    ‘container’ => false,
    ‘menu_class’ => ‘globalNav’,
    ‘items_wrap’ => ‘<ul class=”%2$s”>%3$s‘,
    ‘link_before’ => ‘<span data-hover=”%3$s”>’,
    ‘link_after’ => ‘</span>’,
    );
    wp_nav_menu($args);
    ?>

    現在 data-hover にはそのまま %3$s が出力されています。

    どのように変更すれば、data-hover にナビゲーションラベルの文字を出力させることができますでしょうか?

    • このトピックはasakoが5年、 8ヶ月前に変更しました。
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • nav_menu_item_title というフィルターフックがありまして、それを使えば出来ます。ちょっと大変ですが。

    ただこのフックをそのまま使うと、全てのナビゲーションに対して適用されてしまうので、メニューが複数ある場合は、フックに、wp_nav_menu の パラメーターが渡されるので、それをうまくつかうと良いかもです。

    トピック投稿者 asako

    (@asako08)

    ご回答ありがとうございます。
    nav_menu_item_title少し調べてみましたが、まだまだ知識不足で難しかったので、現時点ではカスタムメニューを使わずに実装しました。
    ヒントをいただきありがとうございました。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「カスタムメニューの使い方について」には新たに返信することはできません。