Wp_nav_menu çıktısından div ve ul paketini kaldırma


17

Wordpress'in yeni menü sistemini kullanıyorum ve işte wp_nav_menu () sonucu

    <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>

Ne istiyorum sadece bu:

<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>

Hayır, div veya ul sarma, birkaç yol ve google etrafında çalışıyorum ama sonuç yok :(

Yanıtlar:


28

Ambalaj div kolaydır. Kullandığınızda wp_nav_menu()şu bağımsız değişkeni ekleyin:'container' => false

İçin <ul>eleman denilen bir argüman var 'items_wrap'. Bkz woodchucky cevabını o birinde daha fazla bilgi için (ve bunu upvote!).


Çok teşekkürler dostum! Şu an çalışıyor. Ben PHP aşina değildi ve ben add.filter function.php koymak gerektiğini bilmiyordum.

1
Bu yine de yukarıda açıklanan wrap_class'ı tamamlayan div'ın nasıl kaldırılacağını açıklamaz. False değerine ayarlanmış kap bağımsız değişkeni çalışmıyor.
sergio

2
Eğer containerargüman çalışmıyor, araçların Kullanmadığınız wp_nav_menu. Muhtemelen wp_page_menu()bir menüyü veya atanmış bir menüye sahip bir menü konumunu belirleyemeyen varsayılan cb'yi çalıştırıyorsunuzdur .
John P Bloch


5

Yalnızca li çıktıları için bunu wp_nav_menu dizisine ekleyin:

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

2

'container' => falseBen mevcut değil belirterek çünkü benim için başarısız oldu 'theme_location've 'menu'. Bunu düzelttiğim anda işe yaradı.

Çözüm: wordpress.org/support


0

Sarma div'ini filtrelemek için:

add_filter('wp_nav_menu_args', 'prefix_nav_menu_args');
function prefix_nav_menu_args($args = ''){
    $args['container'] = false;
    return $args;
}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.