0

このガイドに従って、「テーマにメニューの追加サポートを追加する」:

http://codex.wordpress.org/Navigation_Menus

すべての手順に従いましたが、これが結果です。

http://puu.sh/30bMt.png

だから、それは私が指示した「メニューの挿入」です....しかし、メニューの項目は、ここに見られるWordPressのバックエンドにあるものと一致しません...

http://puu.sh/30bQd.png

「テスト」メニューに 4 つの項目を挿入しただけですが、必要な 4 つの項目ではなく、すべてのページが表示されます。

何が起こっているのかを突き止めるために調査を試みましたが、役に立ちませんでした。なぜこれがファンキーに振る舞うかについて誰かが洞察を持っていますか?


追加のメニューサポートを「登録」しているコード... (themes function.php):

function register_my_menus() {
  register_nav_menus(
    array(
      'header-menu' => __( 'Header Menu' )
    )
  );
}
add_action( 'init', 'register_my_menus' );

「ヘッダーメニュー」自体を挿入しているコード...(テーマheader.php):

<?php
wp_nav_menu( array( 'theme_location' => 'extra-menu', 'container_class' =>'my_extra_menu_class' ) );
?>
4

1 に答える 1

1

「ヘッダー メニュー」を呼び出そうとしている場合、header.php のコードは次のようになります。

<?php wp_nav_menu(array('theme_location' => 'header-menu', 'menu_class' => 'my_extra_menu_class')); ?>

どこから「extra-menu」を取得したかはわかりませんが、WordPress は register_my_menus 関数でそれを宣言していないため、それが何であるかを知りません。

それが役立つことを願っています。

WordPress インストールで複数のメニューを実装する方法の例を次に示します。

// Register Extra Menus
function new_register_menus() {
register_nav_menus(array('Products'=>'Products Nav', 'Support'=>'Support Nav', 'Company'=>'Company Nav' , 'Footer'=>'Footer Nav'));
} 
add_action( 'init' , 'new_register_menus' );

//Code in my footer.php
<?php wp_nav_menu(array('theme_location' => 'Footer', 'menu_class' => 'nav')); ?>
于 2013-05-24T16:21:01.883 に答える