web-dev-qa-db-ja.com

テーマの場所を使用せずに名前でWPメニューを表示する

以前はwpメニューを使っていましたが、常に場所を登録してから次のように使います。

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

テーマのその場所にメニューを表示するには、まずメニューを作成し、それをその場所に割り当てます。

さて、私がやりたいことは、my-menu-1、my-menu-2、my-menu-xのような標準の名前を使って、欲しいメニューをすべて作成することです。それから私は自分のテーマ上にそれらのメニューを表示したいが、場所を使用せずに、名前でそれらを識別するコードを使用してそれらを印刷するだけです。

どうすればいいですか?

1
kyxrus

うーむ、簡単にできます。そしてこれが私のやり方です

どのように私はfunctions.phpで私のメニューを登録するか

add_action('init', 'register_custom_menu'); 
function register_custom_menu() {
    register_nav_menu('custom_menu', __('Custom Menu'));
}

その後、ウル管理パネルuでウル希望の名前で別のメニューを作成します。そして、これまでのように欲しいメニューを手に入れよう。例: - 「Menu 1」と「Menu 2」という名前で2つのメニューを作成した場合

wp_nav_menu(array('menu' => 'Menu 1'));
wp_nav_menu(array('menu' => 'Menu 2'));
1
cjmling