WordPress テーマで、[外観]->[メニュー] にメニューが割り当てられている場合、スタイリングは問題ありませんが、割り当てられていない場合は、div タグではなく ul タグのナビゲーション バー スタイルとしてスタイリングが失われます。 . カスタム メニューはクラスが指定された ul タグを使用しますが、その場所にメニューが割り当てられていない場合は、スタイルを div タグに配置します。
下の図でわかるように、これはメニューが指定されたときに出力されるものです メニュー指定
これは出力します
<div id="menu_dropdown">
<ul id="menu-default" class="dropdown dropdown-horizontal" style="left: 14px; top: 38px; margin-right: 0; margin-top: 0">
functions.php で次のコードを使用する
function register_my_menus() {
register_nav_menus(
array( 'primary' => __( 'Header Menu' ) )
);
}
およびheader.phpの以下
<div id="menu_dropdown">
<?php wp_nav_menu( array( 'theme_location' => 'primary',
'menu' => '',
'container' => '',
'container_class' => '',
'container_id' => '',
'menu_class' => 'dropdown dropdown-horizontal',
'menu_id' => '',
'items_wrap' => '<ul id="%1$s" class="%2$s" style="left: 14px; top: 38px; margin-right: 0; margin-top: 0">%3$s</ul>', ) ); ?>
</div>
ただし、メニューが指定されていない場合、スタイリングは次のようになります メニューが指定されて いません
と出力
<div id="menu_dropdown">
<div class="dropdown dropdown-horizontal"><ul>
</ul>
</div></div>.
私のスタイルシートには、ul.dropdownなどのすべての正しいクラスがあるため、これはスタイリングの問題ではありません.