【WordPress化】ナビゲーションメニューを作成する【register_nav_menu】

ナビメニュー-アイキャッチ
ナビメニュー編集前
こばゆた
こばゆた

ヘッダーやフッタなどに使われるナビゲーションメニュー(以下ナビメニュー)を作成します

オリジナルテーマでナビメニューをわざわざ作る必要もないかと思う方もいるかと思いますが、クライアント様やパソコン操作にあまり詳しくない方でも感覚的に操作・編集できるので一手間はかかりますができる様にしておくと良いと思います。

スポンサーリンク

1.functions.phpにコードを記入する

WordPressでヘッダーメニューやフッターメニューを作成するには「ダッシュボード」→「外観」から作成しますが、自作テーマですと設定画面には「メニュー」の項目はありません。

メニュー作成前

そこでナビメニューを編集できる様にするには以下のコードをfunctions.phpへ書きます。
これでナビメニューがカスタマイズできるようになります。

register_nav_menu('main-menu', 'ヘッダーメニュー');

またフッターやサイドバーにもメニューを作成する場合や将来的に増やす場合は以下のコードを使用します。

register_nav_menus(array(
  'main-menu'=> 'メインメニュー',
  'footer-menu'=> 'フッターメニュー',
  'side-menu'=> 'サイドメニュー',
));

単一ではmenu,複数ではmenusになっていることに注意してください。

コードを記述して再びダッシュボードに戻ってみると「外観」の中に「メニュー」の欄ができています。

メニュー作成後
こばゆた
こばゆた

これでメニューを作成できるようになりました!

スポンサーリンク

2.メニューをカスタマイズする

メニューをアレンジできるようになったので早速作成していきます。

メニューのカスタマイズの仕方
  • STEP1
    メニューをカスタマイズする

    メニューの名前をつけて、「メニューを作成」をクリックします。
    メニューの作成の仕方
    今回は「ヘッダーナビ」という名前をつけました。
  • STEP2
    メニューを作成する
    メニューに入れたい項目を選んで「メニューに追加」→「メニューを保存」をクリックします。
    ドラッグで順番を変えられます。

以上でメニューができましたのでサイトの方に反映をしていきます。

3.ナビメニューを入れたい場所にコードを記入する

ナビを入れたい箇所に以下のコードを記入します。

<?php wp_nav_menu(); ?>

上記のコードを入れるとデフォルトで以下のようなコードが入ります。

<div class="menu-メニュー名-container">
  <ul class="menu">
    <li class="menu-item"><a href=""></a></li>
    <li class="menu-item"><a href=""></a></li>
    <li class="menu-item"><a href=""></a></li>
  </ul>
</div>

なお余談ですがdivのクラス名の”menu-メニュー名-container”のメニュー名の箇所はメニュー作成時にメニュー名を日本語にすると文字化けするようです。
ですので今回の例ですと文字化けしておりますw

余談終了

そしてこちらにCSSを適用して完成です。

ヘッダーナビの完成画像

また一応できましたが今回の完成版にはリンクの下に小さいタイトルが入っています。

ナビメニュー編集前

そちらについてはこちらの記事で解説しています。

またもっと柔軟に作成したい場合はこちらも参照してみてください↓

4.まとめ

ナビメニューまとめ

1.「ダッシュボード」に「メニュー」を表示させるためにfunctions.phpにコードを記入

register_nav_menu('main-menu', 'ヘッダーメニュー');

2.メニューを作成する

3.メニューを入れたい場所にタグを入れる

<?php wp_nav_menu(); ?>

コメント