多くのページで同じメニューを共有している場合
include_once('common-menu.php');
ただし、メニューはページごとに異なる必要があります
ページ A
<ul class="nav navbar-nav">
<li class="active"><a href="a.php">A Page</a></li>
<li><a href="b.php">B Page</a></li>
</ul>
ページ B
<ul class="nav navbar-nav">
<li><a href="a.php">A Page</a></li>
<li class="active"><a href="b.php">B Page</a></li>
</ul>
私は2つの解決策しか知りません。
解決策 1: サーバー側で URL を検出し、出力を決定する
<ul class="nav navbar-nav">
<li class="<? echo 'active'; ?>"><a href="a.php">A Page</a></li>
<li class=""><a href="b.php">B Page</a></li>
</ul>
<ul class="nav navbar-nav">
<li class=""><a href="a.php">A Page</a></li>
<li class="<? echo 'active'; ?>"><a href="b.php">B Page</a></li>
</ul>
解決策 2: js/jquery を使用して URL を検出し、ページが読み込まれた後に js/jquery によってクラスを変更します。
この問題のベストプラクティスは何ですか?
アクティブなアイテムを決定するために if/case/map を使用する必要がないように、プログラム以外のソリューションはありますか?