Bootstrap5でWordPressのテーマを作るーレスポンシブなナビゲーション

Bootstrap5でWordPressのテーマを作るーレスポンシブなナビゲーション
, , ,

前回は、ヘッダーとサイドバーにウィジェットを設定しました。今回は、ナビゲーションを作ります。Bootstrap5の機能を使って、レスポンシブに対応したナビゲーションを作成します。

「nav.php」を以下のように修正します。

nav.php

<!-- nav -->
<div class="row">
    <div class="col">
        <nav class="navbar navbar-expand-md navbar-light mb-3">
            <div class="container-fluid">
                <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="ナビゲーション切り替え">
                    <span class="navbar-toggler-icon"></span>
                </button>
                <div class="collapse navbar-collapse" id="navbarNav">
                    <div class="navbar-nav">
                        <a class="nav-link nav-item" href="/">Home</a>
                        <a class="nav-link nav-item" href="/post/">page1</a>
                        <a class="nav-link nav-item" href="/">page2</a>
                        <a class="nav-link nav-item" href="">page3</a>
                    </div><!-- /navbar-nav -->
                </div><!-- /#navbarNav -->
            </div><!-- /container-fluid -->
        </nav>
    </div><!-- /col -->
</div><!-- /row -->
<!-- /nav -->

「nav.php」を修正してアップロードします。メニューが横並びで表示されます。

ナビゲーション メニュー 01

ブラウザーの幅を狭くすると、ハンバーガーアイコンが表示され、タップするとメニューが下に展開します。

ナビゲーション メニュー 02

Foundation6との違い_03
Foundartionのレスポンシブなナビゲーションの作り方を以前に書いていました。
グローバルメニューもレスポンシブに こんなに簡単でいいのだろうか?
以前は、Foundationのドキュメントのどこかに書いてあった記憶がありますが、バージョンアップするにつれて、無くなっていましたね。
いろいろと試しながら作っていたのですが、久しぶりに自分で書いていたことを思い出しました。Foundationのほうがコードがシンプルに見えますが、古いバージョンの話なので、現状の最新バージョンでうまく動くかは未確認です。
Bootstrap5のほうは、幅100%で表示してセンタリングなどもできるので、使いやすいのではないでしょうか。

まとめ

今回は、Bootstrap5の機能を使って、レスポンシブに対応したナビゲーションを作成しました。今回はシンプルな構成ですが、ナビゲーションバーは様々な機能を備えています。例として「a」のタグを使ってメニューを作っていますが、リストから作成することも可能です。いろいろと試してみてください。

Bootstrap5の開発にはこれが参考になります。ナビゲーションバーの作成のヒントが見つかるかもしれません。

WINGSプロジェクト 山内直 (著), 山田 祥寛 (監修) 技術評論社