質問: カスタムメニューの特定のリンクにクラスを追加する カスタムメニューオプションでクラスを追加できることは知っていますが、それはaの前のliに追加します。li全体ではなくこの特定のaにクラスを直接適用したいのです。だから出力の代わりに<li id="menu-item-51" class="newclass menu-item menu-item-type-custom menu-item-51"><a href="#">link</a> </li> 私もそれがこのようになりたいのです。<li id="menu-item-51" class="menu-item menu-item-type-custom menu-item-51"><a href="#" class="newclass">link</a></li> 何か案は?
回答: 私は最近似たようなことをしなければならず、また別の方法を考え出しました。私はnivoライトボックスプラグインのために同様のクラスを追加しなければなりませんでした。そこで私はrel属性( "link relationship(xfn)")に "nivo"を追加し、次にnav_menu_link_attributesフィルタに以下を追加しました。function add_nivo_menuclass($atts, $item, $args) { if( is_array($atts) && !empty($atts['rel']) && $atts['rel'] = 'nivo' ) { $atts['class'] = 'lightbox'; $atts['data-lightbox-type'] = 'inline'; } return $atts; } add_filter('nav_menu_link_attributes','add_nivo_menuclass', 0,3);