WordPress カスタムメニューに対応させる!

WoedPressのテンプレートによって、メインのナビゲーションが、カテゴリ表示だったり、ページだったり、また特殊なものだったりしますよね。デザインはいいんだけど、メニューはカテゴリに置き換えたい、ページで構成したい、などといった場面に遭遇することは多々あります。

テンプレートによっては、管理画面で簡単に切り替えられたり、プラグインで自由にメニューを構成することができますが、最も簡単にだれでもメニューの表示を切り替える方法をご紹介します。

※WordPressのバージョンによっては対応していないみたいです。3.x以上で試してください。

WordPressの管理画面のメニューをクリックしてください。

まずメニューに対応しているか確認します。

「現在はメニューに対応していませんが・・・・・」となっているとメニューに対応していません。(そのままです。。)逆にこの記述がない場合は、メニューに対応しているということです。バージョンによりますが。。おそらくメニューをカスタマイズする項目があるのではないでしょうか。

メニューに対応していない体で進めます。

まず、どのテンプレートにも「function.php」はあると思いますのでそれを開きます。(なければ、主要な関数がまとまったPHPファイルを片っ端から試してみてください。その辺はあまり詳しくないです。。)

「functions.php」の一番最後の行で大丈夫と思いますのでそこに、

<?php add_theme_support( 'menus' ); ?>

と記述してください。保存もします。

これで管理画面でメニューに対応したような表記になると思います。

「現在はメニューに対応していませんが・・・・・」がなくなっています。

次はメニューを表示したい場所に(おそらく「header.php」の一番下辺りがメインメニューの部分のことが多いです。)

<?php wp_nav_menu(); ?>

と記述します。これは管理画面で作成したメニューを出力するための記述です。

あとはメニュー画面で、好きなようにメニューを作成して下さい。表示はみだれるとおもいますので、CSSで整えてくださいね!

※たしかメニューを作成したメニュー名が表示部分に入る<ul>タグのid名になってたような気がします。