thinkcmf常用标签

1、图片地址:{:cmf_get_image_url($vo.icon)}

2、模板控件

模板变量调用:$theme_vars.title

<widget name="aboutUs">

   {$widget.title}  //控件标题
{$widget.vars.subTitle} //控件变量 subTitle
{:nl2br($widget.vars.content)} //输出带格式的textarea变量内容
//输出数组变量,变量名links
<foreach name="$widget.vars.links" item="vo">
<a href="{$vo.url}">&gt;  {$vo.title}</a>
</foreach> </widget>

与内置的判断标签配合使用
present标签用于判断某个变量是否已经定义
<present name="name">
name已经赋值
<else />
name还没有赋值
</present>

<notpresent name="name">
name还没有赋值
</notpresent>
empty标签用于判断某个变量是否为空
使用例子:

<empty name="$widget.vars.content">
没有设置
<else>
{$widget.vars.content}
</empty>


更多https://www.kancloud.cn/thinkcmf/doc/266538
 

 3、首页相关标签

标题:{$site_info.site_name|default=''} ,关键词:{$site_info.site_seo_keywords|default=''},描述:{$site_info.site_seo_description|default=''}

模板路劲__TMPL__

静态资源路径:__TMPL__/public/assets/

head前钩子:<hook name="before_head_end"/>

4、导航条模板 <include file="public@nav"/>

公司名称:{$theme_vars.company_name|default='吴硕建站'}   注意:网站标题可能 跟公司名称不同,这里的$theme_vars.company_name 是在导航条模板里设置的,也只有在导航条模板也nav里有作用。

5、幻灯片调用,cmf5可以定义多个幻灯片,然后用模板变量来设置那个位置显示那个幻灯片。

   例如:首页 在首页的模板变量里增加一个

 

然后在首页这样调用

    <php>
        $top_slide_id=empty($theme_vars['top_slide'])?1:$theme_vars['top_slide'];
    </php>
    <slides id="$top_slide_id">
        <li>
            <div class="caption-wraper">
                <div class="caption">{$vo.title|default=''}</div>
            </div>
            <a href="{$vo.url|default=''}"><img src="{:cmf_get_image_url($vo.image)}" alt=""></a>
        </li>
    </slides>
    <noslides id="$top_slide_id">
        <li>
            <div class="caption-wraper">
                <div class="caption">此幻灯片只是演示,您没有设置任何幻灯片,请到后台模板设置!</div>
            </div>
            <a href=""><img src="__TMPL__/public/assets/images/demo/1.jpg" alt=""></a>
        </li>
        <li>
            <div class="caption-wraper">
                <div class="caption">此幻灯片只是演示,您没有设置任何幻灯片,请到后台模板设置!</div>
            </div>
            <a href=""><img src="__TMPL__/public/assets/images/demo/2.jpg" alt=""></a>
        </li>
        <li>
            <div class="caption-wraper">
                <div class="caption">此幻灯片只是演示,您没有设置任何幻灯片,请到后台模板设置!</div>
            </div>
            <a href=""><img src="__TMPL__/public/assets/images/demo/3.jpg" alt=""></a>
        </li>
    </noslides>

 6、友情链接

<links>
<li><a href="{$vo.url|default=''}" target="{$vo.target|default='_blank'}" title="响应式建站平台">{$vo.name|default=''}</a></li>
</links>

 7、获取当前控制器,模块,方法

thinkphp5 Request对象

$request = Request::instance();
echo "当前模块名称是" . $request->module();
echo "当前控制器名称是" . $request->controller();
echo "当前操作名称是" . $request->action();

 cmf5 可以在模板中直接使用$Request对象,直接输入它的属性或调用它的大部分方法,但只支持方法的第一个参数;

{$Request.module}     {$Request.controller}    {$Request.action}

配合if标签可以选中当前栏目 <if $Request.controller=='Page' && $Request.param.id==7>active</if>

<li class="link <if $Request.controller=='Page' && $Request.param.id==7>active</if>">
<div class="title">
<a class="en" href="about.html">关于</a>
<a class="cn" href="about.html">ABOUT</a>
</div>
</li>

8、获取分类列表

<php>
    $subcategories = appportalserviceApiService::categories(['where'=>['parent_id'=>$category['id']]]);
</php>
<volist name="subcategories" id="vo">
     <a class="mui-control-item <eq name="$i" value="1">mui-active</eq>" data-index="0" href="#content$i"> {$vo.name} </a>
</volist>

原文地址:https://www.cnblogs.com/djiz/p/7488445.html