0

外出先でメニューを登録する必要があるWordpressでテーマを構築しています。

以下のコードは問題なく動作しますが、静的です (functions.php 内)。

function register_my_menus() {
register_nav_menus(

  array(
  'header-menu' => __( 'Header Menu' ),
  'footer-menu' => __( 'Footer Menu' ),
  'left-menu' => __( 'Left Menu' )
  )                 
)};

ただし、メニューリストは以下の配列に保存されています。上記の register_nav_menus でこれを使用するにはどうすればよいですか? foreach を実行しようとしましたが、配列内で実行するのは簡単ではありませんよね?

$list_of_menus[];

上記の配列には以下が含まれます。

'fdsfds_fds' => __( 'fdsfds fds' ),
'Its_my_life' => __( 'Its my life' ),
'header-menu' => __( 'Header Menu' ),
'footer-menu' => __( 'Footer Menu' ),
'left-menu' => __( 'Left Menu' )

ありがとうございました!

4

1 に答える 1

1

完全な答えに値するとは思えませんが、次のようになります。

配列が次の場合:

$list_of_menus = array(
    'fdsfds_fds' => __( 'fdsfds fds' ),
    'Its_my_life' => __( 'Its my life' ),
    'header-menu' => __( 'Header Menu' ),
    'footer-menu' => __( 'Footer Menu' ),
    'left-menu' => __( 'Left Menu' )
);

次に、登録は次の問題です。

register_nav_menus($list_of_menus);

もちろん、これはどのようにロードしているかにもよるかもしれません$list_of_menus- register_nav_menus 呼び出しが行われる前に、時間内にロードできますか?

編集
アレイを構築するにはいくつかの方法があります。上は最初です。さらに、次のようにこの配列に要素を追加できます。

$slug = "my_menu_slug';
$name = __('My Menu Name');

$list_of_menus[$slug] = $name;
于 2013-10-26T19:52:17.763 に答える