搜索
系统检测到您的用户名不符合规范:

Thinkphp5中widget的实用性讲解

浏览:8266 发布日期:2017年03月27日 分类:技术分享 关键字: widget thinkphp5 分层控制器
现在Widget叫分层控制器了,很官方了,熟悉YII框架的朋友都习惯叫它小部件,我也是一直叫它小部件,它真的是非常好用的一个东西,今天就简单的分享一下它的使用方法吧。

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

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

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





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

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

新建控制器Widgets如下:namespace app\index\widget;

use think\Controller;

class Widgets extends Controller
{
public function leftCategory()
{
return $this->fetch('widget/leftCategory');//当然得有视图了
}

public function breadCrumbs()
{
return $this->fetch('widget/breadCrumbs');
}
}
视图模板leftCategory.php(左侧导航栏)如下:<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(面包屑)如下:<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>
最后就是调用了,在需要的模板页面直接加载输出就行了。


原文:http://www.dawnfly.cn/article-1-349.html
最佳答案
评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
破xiao起fei
积分:5775 等级:LV4
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /