WordPressでは管理画面の『外観>メニュー』でメニューの管理ができます。
ここで新しいメニュー自体の追加はできるのですが、メニューの表示位置は追加できません。
例えばフッターで左右に項目を分けてメニューを表示したい…ということがあっても現状だと実現ができないです。
そんな時はfunctions.phpにコードを追加してメニューの位置を追加しましょう。
functions.phpにコードを追加
functions.phpに以下のコードを追加します。※functions.phpはバックアップを取りながら作業してください
1 2 3 4 5 6 7 8 9 10 11 |
function register_my_menus() { register_nav_menus( array( 'headernav' => 'ヘッダーナビ', 'sidenav' => 'サイドナビ', 'footernav_l' => 'フッターナビ(左)', 'footerna_r' => 'フッターナビ(右)' ) ); } add_action( 'after_setup_theme', 'register_my_menus' ); |
‘headernav’や’ヘッダーナビ’の場所は管理がしやすいよう任意の名前に変更してください。
これをアップしたら位置の追加は完了です。
メニューを表示させたい位置にチェックを入れてください。
ただこれだけだとテンプレートに表示はされないので、表示させたい箇所のphpに以下のコードを入れます。
1 2 3 |
<?php wp_nav_menu( array( 'theme_location' => 'headernav', )); ?> |
これで無事メニューが表示されます。
ちなみにCodexにオプションもあるので、必要な時には参考にしてみてください。