[thinkPHP5项目实战_24]前台页面导航栏目调用
之前的前台页面的导航栏是通过a标签实现跳转的,但是在实际项目中栏目的信息可能是动态变化的,因此展示的导航栏也会根据数据库存储的变化而变化;
通过后台操作对导航栏的管理,实现前台页面的展示。
每次打开前台页面都需要优先展示导航栏,需要创建初始化方法在其他页面的控制器调用之前调用导航栏页面
首先,在后台创建自己想要的导航栏目:
在application/index模块下创建控制器Basic.php,该初始化方法用于从数据表cate中取出导航栏
<?php namespace appindexcontroller; use thinkController; class Basic extends Controller { //定义控制器初始化方法_initialize,在该控制器的方法调用之前首先执行。 public function _initialize() { $this->nav(); } //给导航模板赋值 public function nav() { $navres = hinkDb::name("cate")->order("id asc")->select(); $this->assign("navres",$navres); } }在前台的其他控制器中继承该控制器:
<?php namespace appindexcontroller; class Index extends Basic { public function index() { return $this->fetch(); } }
修改导航页面header.html进行模板赋值:
由于留言板所属的type不同,因此需要对留言板做一个判断
<div class="blog-masthead"> <div class="container"> <nav class="blog-nav"> {volist name="navres" id="vo"} <a class="blog-nav-item" href=" {if condition="$vo["type"] eq 0"} {:url("lists/index",array("cateid"=>$vo["ID"]))} {else /} {:url("guest/index",array("cateid"=>$vo["ID"]))} {/if} ">{$vo.catename}</a> {/volist} </nav> </div> </div>
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。