WordPress3.0では、新機能としてナビゲーションメニューを追加する事ができます。
ただし、オリジナルのテーマにナビゲーションメニューを追加するには、
テーマ自体にソースを追加しないと、ナビゲーションメニューの機能を追加する事ができません。
今回は、自分のオリジナルテーマをWordPress3.0の新機能であるナビゲーションメニューに対応する方法を記載します。
テーマにナビゲーションメニュー機能を追加する設定
まず対応させたいテーマ内にあるfunction.phpに、下記のソースを追加します。
[php]add_theme_support( ‘nav-menus’ );[/php]
※WordPress3.0の最終FIXで上記の書き方から、下記の書き方に仕様が変わりました。
[php]add_theme_support( ‘menus’ );[/php]
WordPress最新版ではmenusでないと動作しない可能性が高いので注意してください。
もし、上記のソースがない場合、ナビゲーションメニューの管理画面を開くと、下記が表示されます。
ナビゲーションメニューの管理はできますが、テーマに対応(機能)できない状態です。
テーマに表示させるテンプレートタグ
サイトにナビゲーションメニューを表示させるためのテンプレートタグを、
テーマファイル内の表示させたい箇所に、下記のソースを追加します。
wp_nav_menu()のテンプレートタグは、WordPress3.0から追加されたテンプレートタグです。
引き数など多数用意されているので、詳細はwp_nav_menu()をご確認ください。
管理画面でナビゲーションメニューの設定をする方法
ナビゲーションメニューの設定は、【管理画面>外観>メニュー】にあります。
WordPress3.0のナビゲーションメニューの管理画面
メニューを作成する
メニューを作成します。
メニューは、ナビゲーションメニューを作成する1つの塊で、複数作成する事ができます。
メニュー名は、メニューのソースに着くid名になるので、英数字で保存する事をお勧めします。
[php]
コメント
コメント一覧 (5件)
[…] さて。 前回挫折した「中身が出来たところでメニューを作る(挫折)」。(メニューって「ホーム」「更新状況」「小説」とか、サイト上部によくあるやつです) 「固定ページ」と「カテゴリーページ」が入り交じってるから自動で表示させることができず、前回はテンプレートに直にurl書いていたのですが、これ実はそんなに悩むことでもなかったのです。 『全部固定ページにすればいい』んです。馬鹿だなあ、ワタシ…。 (※追記 もっと簡単なカスタムナビゲーションというものがver.3から付いてるそうです。 ・WordPress 3.0でテーマにナビゲーションメニューを追加する方法) […]
[…] 成」というのが、「Lovelog+*」さんを参考にしてみてようやく分かりました。 […]
[…] が、Lovelog+*さんに設定方法が詳しく解説されています。 […]
add_theme_support( ‘nav-menus’ );
だとうまくいかず、
add_theme_support(‘menus’);
だとうまくいきました。
この方法って何か間違ってますか?
noosaさん
確認した所、WordPress3.0の最終FIXで、
add_theme_support(‘nav-menus’);
から
add_theme_support(‘menus’);
に仕様が変わったようです。
なので、menusで合っています。