thinkphp5 tablib标签库自定义

官方文档的标签库使用教程没有写得太细,自己摸索出来了一些。


先放一段写好的面包碎代码

namespace app\Common\taglib;

use \think\template\TagLib;

class UntilTag extends TagLib
{
    protected $tags = array(
        'breadcrumb' => array('attr' => 'name','close' =>0),
    );

    /**
     * 用法
     * {UntilTag:breadcrumb name='个人中心/修改密码' /}
     * @param $tag
     * @param $content
     * @return string
     * @autor: 潘国兴
     */
    public function tagBreadcrumb($tag, $content)
    {
        $tags = '';
        if(isset($tag['name']) && !empty($tag['name']))
        {
            $tags = explode('/',$tag['name']);
        }
        $parseStr =  '<nav class="breadcrumb"><i class="Hui-iconfont"></i> <a class="maincolor" href="{:url("index")}">首页</a>' ;
        if(!empty($tags))
        {
            foreach($tags as $vo)
            {
                $parseStr .= "<span class='c-666 en'>></span><span class='c-666'>{$vo}</span>";
            }
        }
        $parseStr .= '</nav>';
        return $parseStr;
    }
}


然后设置配置文件

'template'=>[
    'taglib_pre_load'    => 'app\Common\taglib\UntilTag',
],
这个是加载额外的标签库,使用的时候要注意用法,第一,从源代码看,这个一定要用命名空间方式加载,不然会自动加载到thinkphp\template\tablib这个命名空间下面的,第二是在模板上的时候,一定要类名称加tag名{UntilTag:breadcrumb name='个人中心/修改密码' /}


下面这个配置文件设置用法是另外一种,

'taglib_build_in'    =>    'cx,article'
这种设置是直接简化了标签的使用,在模板的用法如下:

{breadcrumb name='个人中心/修改密码' /}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值