入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

Widget小部件的使用方法介绍 TP5

创建时间:2018-02-24 投稿人: 浏览次数:156

现在Widget叫分层控制器了,很官方了,熟悉YII框架的朋友都习惯叫它小部件,我也是一直叫它小部件,它真的是非常好用的一个东西,今天就简单的分享一下它的使用方法吧。

Thinkphp3.2版本使用方法从这进入:http://www.dawnfly.cn/article-1-197.html

今天主要叫Thinkphp5版本的使用方法(首先说明模板文件后缀是.php,使用的原生php语法)。

先来看下我的使用场景吧。

小部件and分层控制器

小部件and分层控制器

小部件and分层控制器

三张图标注的左侧分类导航和面包屑其实是可以共用的,而且我们都不应该去写重复的代码来实现这么一个功能,那怎么办呢?实现方法也有很多,当然在Thinkphp框架中,我首先想到的便是通过Widget来实现了,3.2版本就用过,很好用,tp5中稍微调整过了,但影响不大。

首先在模块下(比如前台index)建立一个widget文件夹,然后在view下面建立一个widget文件夹。

新建控制器Widgets如下:

12345678910111213141516namespace appindexwidget; use thinkController; class Widgets extends Controller{    public function leftCategory()    {        return $this->fetch("widget/leftCategory");//当然得有视图了    }     public function breadCrumbs()    {        return $this->fetch("widget/breadCrumbs");    }}

视图模板leftCategory.php(左侧导航栏)如下:

12345678910111213<div class="left_title1"><?php echo $parentName ?></div><div class="sub_left">    <div class="ny_zblb1">        <ul id="menu-%e6%96%b0%e9%97%bb" class="clearfix left_nav">            <?php foreach ($currentCateList as $v): ?>            <li id="menu-item-<?php echo $v["id"] ?> end"                class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-47 end"><a                    <?php echo $v["enname"] == $currentCateEnName "style="background: url(/public/static/home/images/leftli1.jpg) 0 0px;color: #FFF; "" "" ?>                    href="<?php echo url("@index/page/_list", "enname=" . $v["enname"]); ?>"><?php echo $v["name"] ?></a>                </li><?php endforeach; ?>        </ul>    </div></div>

视图模板breadCrumbs.php(面包屑)如下:

123456<div class="right_title"><span class="right_name"><?php echo $currentCateName ?>        <font><?php echo $currentCateEnName ?></font></span>    <div class="fast"><b>当前位置:</b>        <ul class="breadcrumbs"><?php echo $currentBread; ?></ul>    </div></div>

最后就是调用了,在需要的模板页面直接加载输出就行了。

小部件and分层控制器

声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。