wordpress3で追加された新機能カスタムメニューを自作テーマで使えるようにしたので、やり方をメモしておきます。

自作のテーマにカスタムメニューを組み込もうと思い立ったのですが、ネット上に情報があまり多くなかったので、YEAH!BREAK!CARE!BREAK!でやってみたら、なんとなく出来たのでメモしておきます。

fanctions.phpを編集

<?php
register_nav_menus(
    array(
        'menu1' => 'Menu1 - header',
        'menu2' => 'Menu2 - footer'
    )
);
?>

fanctions.phpに上記のコードを追加して、カスタムメニューを使えるようにします。左がテンプレートから呼び出す際の名前で、右が管理画面上での表示名です・・・たぶん。上記例では、menu1とmenu2の2つのメニューセットを設定しています。

テンプレートファイルを編集

<?php
    wp_nav_menu(array(
        'theme_location' => 'menu1'
    ));
?>

テンプレートファイルのカスタムメニューを表示させたい箇所に、上記のように記述します。上記例だと、管理画面でmenu1の場所に設定したカスタムメニューが表示されます。

containerが消えないんですけど

<?php
    wp_nav_menu(array(
        'container' => '',
        'theme_location' => 'menu1'
    ));
?>

メニューのulを囲むdivを出力したくないんですけど、消し方がわかりません!上記の方法が、wordpressの英語サイトに書いてあった方法なのですが、ダメみたいです。あと、デフォルトではmenu_classがmenuになっているはずが、出力するとコンテナのクラス名がmenuになってます。・・・この、うそつきっ!

まだ読んだことないけど、ちょっと欲しい!