次の thinkphp フレームワーク チュートリアルのコラムでは、thinkphp ナビゲーションで現在のページを強調表示する方法を紹介します。困っている友人の役に立てば幸いです。
tp5 に適用すると、セカンダリ メニュー ナビゲーションの強調表示の問題を解決できます。つまり、テンプレート内の現在のコントローラー名とメソッド名を取得し、ナビゲーションを確認できます。バーがクリックされました 該当するかどうかに関係なく、例は次のとおりです。 第一レベルのメニューの
<li class="{eq name=':request()->controller()' value='userinfo'}active{/eq}"> <a href="index.html#"><i class="icon-group"></i> <span class="nav-label">用户管理</span><span class="fa arrow"></span></a> <ul class="nav nav-second-level"> <li class="{eq name=':request()->action()' value='ueraddcheck'}active{/eq}"><a href="{:url('Userinfo/uerAddCheck')}">新增用户审核</a></li> <li class="{eq name=':request()->action()' value='edituser'}active{/eq}"><a href="{:url('Userinfo/editUser')}">编辑用户</a></li> </ul> </li>
{eq name=':request()->controller()' value='userinfo'} は次のとおりです。どのコントローラーが渡されるかを決定する 該当する場合、クラスはアクティブです。2 次メニュー {eq name=':request()->action()' value='ueraddcheck'} によって、どのメソッドから来たのかが決まります。に対応するアクティブなクラスが表示されます。
原理は tp3 でも同じですが、現在のコントローラ名とメソッド名の取得方法が異なります。 、例は次のとおりです:
<li class="menu-list <if condition='$Think.const.CONTROLLER_NAME eq Help'>active</if>"><a href="#"><i class="fa fa-tasks"></i> <span>帮助管理</span></a> <ul class="sub-menu-list"> <li class="<if condition='$Think.const.ACTION_NAME eq whoClaim'>active</if>"><a href="{:U('Help/whoClaim','','')}">谁认领了我</a></li> </ul> </li>
以上が現在のページを強調表示する thinkphp ナビゲーションについての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。