問題描述

我正在使用 Wordpress 的新菜單系統,這裏是 wp_nav_menu() 的結果

    <div class="menu-main-menu-container">
   <ul id="menu-main-menu" class="menu">
   <li id="menu-item-28" class="menu-item menu-item-type-post_type current-menu-item page_item page-item-21 current_page_item menu-item-28"><a href="http://www.bemang.com/">Trang nhà</a></li>
    <li id="menu-item-29" class="menu-item menu-item-type-post_type menu-item-29"><a href="http://www.bemang.com/blog/">Blog</a></li>
    <li id="menu-item-30" class="menu-item menu-item-type-post_type menu-item-30"><a href="http://www.bemang.com/gioi-thieu/">Giới thiệu</a></li>
    </ul>
   </div>

我想要的只是這樣:

<li id="menu-item-28" class="menu-item menu-item-type-post_type current-menu-item page_item page-item-21 current_page_item menu-item-28"><a href="http://www.bemang.com/">Trang nhà</a></li>
   <li id="menu-item-29" class="menu-item menu-item-type-post_type menu-item-29"><a href="http://www.bemang.com/blog/">Blog</a></li>
   <li id="menu-item-30" class="menu-item menu-item-type-post_type menu-item-30"><a href="http://www.bemang.com/gioi-thieu/">Giới thiệu</a></li>

不,包裝 div 或 ul,我一直在嘗試幾種方式和谷歌,但沒有結果:(

最佳解決方案

包裝 div 很容易。當您使用 wp_nav_menu()時,添加此參數:'container' => false

對於<ul> 元素,有一個名為'items_wrap'的參數。有關更多信息,請參閲 woodchucky’s answer(和 upvote!) 。

次佳解決方案

wp_nav_menu()接受未記錄的參數

‘items_wrap’ => ‘<ul id="%1$s" class="%2$s">%3$s</ul>

$nav_menu .= sprintf( $args->items_wrap, esc_attr( $wrap_id ), esc_attr( $wrap_class ), $items ); 執行

你可以玩 sprintf 參數

例如:’items_wrap’ => ‘%3$s’ 將刪除包裝<ul> 標籤

第三種解決方案

僅輸出 li,將其添加到 wp_nav_menu 數組中:

'container'      => '',
'items_wrap'    => '%3$s',

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。