1、易优自动加1的函数标签 {$i}从1开始 从2开始{$i+1} {$key}从0开始 2、当前目录 {$eyou.field.dirname} 父目录 {$eyou.field.pdirname} {$eyou.field.nid} 文章id {$eyou.field.aid} 文章地址: {$eyou.field.pageurl} 3、用户笔名调用 {eyou:memberinfos mid='$eyou.field.users_id' id='users'} {$users.nickname} {$users.hidden} {/eyou:memberinfos} 4、关于新加模型增加字段判断是否为空的写法 新增字段 aa 首先在列表里定义下为添加的字段,然后在判断 {arclist addfields='aa'} {eyou:notempty name="$field.aa"} 不为空,显示内容 {/eyou:notempty} {/arclist} 或者在字段前加上eyou 也表示定义 {eyou:if condition="($eyou.field.aa != '')"} 显示结果 {/eyou:if} 5、判断字段为空显示不同的内容的几种方法 方法1 {eyou:empty name='$eyou.global.web_attr_21' /} 字段内容为空显示的内容 {eyou:else /} {eyou:global name='web_attr_21' /} {/eyou:empty} 方法2 {eyou:eq name='$field.is_litpic' value='1'} <!-- 有缩略图 --> {eyou:else /} <!-- 无缩略图 end --> {/eyou:eq} 6、判断奇数偶数不同的样式,适合一些前端样式左右布局不一样的情况 {eyou:if condition="$i%2 =='0'"} 偶数行的样式 {eyou:else /} 奇数行的样式 {/eyou:if} 另外的用法 {eyou:if condition="$i =='4'"} {eyou:else /} <div class="line"></div> {/eyou:if} 当id等于4或者调用的顺序等4的的时候不显示 竖线 否则显示 适合一些特殊样式,比如栏目加竖线 百度 | 新浪 | 搜狐 | 云创年华网络 7、数据类型是开关型,如何做判断,通过后台设置该字段是否显示 后台新增开关字段(字段名:xuanmoban) {eyou:eq name='$eyou.field.xuanmoban' value='1'} 显示 {eyou:else /} 不显示 {/eyou:eq} 8、文章列表下的描述判断无描述内容时显示自定义内容 无截取字节判断(无描述内容时显示自定义内容)。(暂无介绍…)就是自定义内容 {$field.seo_description|default='暂无介绍…'} 截取30字节判断(无描述内容时显示自定义内容)。30属于自定义截取字节(可以自定义填写,数值在0-150之间)(暂无介绍…)就是自定义内容 {$field.seo_description|html_msubstr=###,0,30,true|default='暂无介绍…'} 9、判断有无子栏目 判断有无子栏目(全局) {eyou:notempty name='$eyou.field.has_children' /} <!-- 有子栏目时显示的内容 --> {eyou:else /} <!-- 没有子栏目时显示的内容 --> {/eyou:notempty} 10、arclist循环中,判断如果是第一个li,则添加固定的css,否则不加,适合部分前端列表 第一个需要添加特别的突出的样式,比如加红色,加个hot,置顶等情况 {eyou:arclist titlelen='20' row='30' '} <li {eyou:eq name='$i' value='1'} class="pl"{/eyou:eq} > <a href="{$field.arcurl}" title="{$field.title}" ><img src="{$field.litpic}" alt="{$field.title}" width="215" height="161" /></a> <a href="{$field.arcurl}" title="{$field.title}" class="protitle"><span>{$field.title}</span></a> <li> {/eyou:arclist} 11、导航菜单判断是否有子栏目,有则显示否则隐藏(二级菜单调用),适合导航栏目二级或者三级栏目添加特殊样式 {eyou:channel type="top" row="10" id="field" currentstyle="active"} <li class="yiji"> <a href="{$field.typeurl}" title="{$field.typename}" class="{$field.currentstyle}">{$field.typename}</a> {eyou:notempty name="$field.children"} <div class="erji"> {eyou:channel name="$field.children" row="100" id="field2"} <a href="{$field2.typeurl}" class="dropdown-item ">{$field2.typename}</a> {/eyou:channel} </div> {/eyou:notempty} </li> {/eyou:channel} 12、list 判断 每隔2次输出内容,适合列表一行末尾换行时候有特殊样式时方便判断调用 {eyou:list pagesize='12' titlelen='20' row='30' mod='2'} {eyou:eq name='$mod' value='0'}<p class="pl"></p>{/eyou:eq} {/eyou:list } mod代表循环,mod='2'即为每隔两条输出一次,{eyou:eq name='$mod' value='0'}此为输出内容{/eyou:eq} 13、前台页面设置固定内容如何判断是否登录呢?,比如设置登录前显示市场价,登录后显示会员价。 比如:没有登录显示一个内容,登录以后显示一个内容。 {eyou:user type='login' txt='会员中心'} <a href="{$field.url}" id="{$field.id}">登录</a> {$field.hidden} {/eyou:user} 未登陆显示登陆 登陆后显示会员中心 14、多语言情况下判断是否隐藏 {eyou:language type='default'} <a href="{$field.url}"><img src="{$field.logo}" alt="{$field.title}">{$field.title}</a> {/eyou:language} 不包括当前的语言 {eyou:language type='list'} <a href="{$field.url}"><img src="{$field.logo}" alt="{$field.title}">{$field.title}</a> {/eyou:language} 罗列出所有的语言 多语言情况下,想要判断主语言显示,其他语言隐藏的时候。如何调用呢? 下面标签就是判断主语言显示,其他语言隐藏: {eq name='$Think.cookie.home_lang' value='cn'} <p>内容</p> {/eq} 如果判断主语言隐藏,其他语言显示,那就用下面的标签: {neq name='$Think.cookie.home_lang' value='cn'} <p>内容</p> {/neq} 15、判断会员是否登录并显示不同的内容 {eyou:if condition='intval($Think.session.users_id) > 0'} 如果是会员登录了显示的内容 {eyou:else /} 不是注册会员的显示内容 {/eyou:if} 下面这个是判断会员级别的调用代码 {eyou:if condition='intval($Think.session.users.level_value) == 100'} 是高级会员显示 {eyou:else /} 不是高级会员显示 {/eyou:if} 100 是后台的会员级别管理的会员等级值 16、产品价格标签调用如何只要整数,不要小数点后面的00 {$field.users_price|intval=###} 17、几个不常见的隐藏标签 {$eyou.field.typename} 当前栏目 {$eyou.field.dirpename} 目录名称 {$eyou.field.pageurl} 文章地址 上级栏目链接标签 {$eyou.field.ptypeurl} 上级栏目名称标签 {$eyou.field.ptypename} 顶级栏目名称“{$eyou.field.typeid|gettoptype=###,'typename'}” 顶级栏目链接“{$eyou.field.typeid|gettoptype=###,'typeurl'}” 顶级栏目名称“{$eyou.field.typeid|gettoptype=###,'englist_name'}” {eyou:global name='web_templets_m' /}---手机路径 {eyou:global name='web_templets_pc' /}---电脑路径 {neq name='$i' value='$__LIST__|count=###'}|{/neq}---最后一个不显示 {eq name='$i' value='$__LIST__|count=###'}|{/eq}---最后一个显示 {eyou:eq name='$i' value='1'} 输出值{/eyou:eq}---第一个li,则添加固定的css {eyou:downcount /}下载次数 {$field.downcount} 栏目及主页下载次数 {eyou:arcclick /} 文档页浏览次数 {$field.click } 栏目及主页浏览次数 {$eyou.field.author} 文档页作者 {$field.author} 栏目及首页作者 {$field.total} 标签文档数量 {$field.count} 标签文档点击量 {$eyou.field.typeid|GetTotalArc=###}或者{$eyou.field.typeid|GetTotalArc(当前栏目ID)=###}统计栏目文章数 18、搜索结果页让关键词高亮飘红 {eyou:list titlelen='40' pagesize='8'} {eyou:php} $field['new_title'] = str_replace($eyou['field']['keywords'], '<span style="color: #ff0000;">' . $eyou['field']['keywords'] . '</span>', $field['title']); {/eyou:php} <li> <a href="{$field.arcurl}" title="{$field.title}">{$field.new_title}</a> </li> {/eyou:list} 19、获取到移动端域名的连接的标签写法 {eyou:global name='web_mobile_domain' /}.{$Request.rootDomain}__ROOT_DIR__ html写法:<a href="https://{eyou:global name='web_mobile_domain' /}.{$Request.rootDomain}__ROOT_DIR__">手机访问</a> {eyou:global name='web_mobile_domain' /}.{$Request.rootDomain}__ROOT_DIR__ 说明: {eyou:global name='web_mobile_domain' /} 为域名二级名称 当然你也可以换成自定义标签 比如: {eyou:global name='web_attr_2' /}.{$Request.rootDomain}__ROOT_DIR__ .{$Request.rootDomain}__ROOT_DIR__ 代表域名不带.www 头的 只有 eyoucms.com 这样的格式 20、大部分浏览器隐藏video视频播放器下载按钮功能 打开你的视频内容页的模板文件,找到播放器代码 video,参考下图在video元素里加上两个属性。 代码如下: controlslist='nodownload' oncontextmenu='return false' 代码说明: controlslist='nodownload' 禁止下载 oncontextmenu='return false' 禁止右击 禁止画中画:后面补充 21、栏目链接怎么实现外链情况下为新窗口打开? 在a标签里面增加 {eyou:eq name='$field.typelink'/}{eyou:else /}target="_blank"{/eyou:eq} 或者 {eyou:eq name='$field.is_jump' value='1'}target="_blank"{/eyou:eq} 22、获取栏目类型ID标签 {$field.channeltype} 获取栏目类型ID可以用于判断搜索页面显示不同类型内容 23、如何判断顶级栏目,如果有下级就不带链接,没有下级就带链接! {eyou:channel type="top" row="60" id="field" currentstyle="background:#0976dc"} {eyou:notempty name="$field.children"} <li class="menu"><a href="javacript:void(0);" style="{$field.currentstyle}">{$field.typename}</a> <ul class="sub"> {eyou:channel name="$field.children" row="100" id="field1"} <li><a href="{$field1.typeurl}">{$field1.typename}</a> </li> {/eyou:channel} </ul> <span></span> </li> {eyou:else /} <li><a href="{$field.typeurl}" style="{$field.currentstyle}">{$field.typename}</a></li> {/eyou:notempty} {/eyou:channel} 24、标签字符串替换 {$eyou.field.content|str_replace='/uploads/allimg/','http://www.eyhtml.com/uploads/allimg/',###} 25、orderby="rand" 不起作用 修改成:orderby="rand()" 即可. 26、判断推荐文章 并给以特别的样式 比如 new hot 标题加粗 换个颜色等 {eyou:eq name='$field.is_recom' value='1'} 单独样式 {else /} 默认样式 {/eyou:eq} 其他的,可以类似写法 推荐:is_recom 特荐:is_special 头条:is_head 27、栏目高亮标签,顶级和其他栏目分别高亮 {eyou:channel type="first" currentstyle="active"} {eyou:eq name='$eyou.field.grade' value='2'} {eyou:type typeid='$eyou.field.typeid' id='field1'} {eyou:eq name='$field1.parent_id' value='$field.id'} {eyou:assign name='$field.currentstyle' value='active' /} {/eyou:eq} {/eyou:type} {/eyou:eq} {$field.typename} {/eyou:channel} 28、判断列表文档数量,比如第一篇文档或者任意一篇文档给以不同的样式 {eyou:list pagesize='20' titlelen='40'} {eyou:eq name='$i' value='1'} 特殊样式 {else /} 默认样式 {/eyou:eq} {/eyou:list} 红字1 表示第一篇文档 29、调用三级栏目菜单 {eyou:channelartlist typeid='$eyou.field.typeid|gettoptype=###,typeid'}{eyou:field name='typename' /}{/eyou:channelartlist} {eyou:channel type="first" currentstyle="active"} {eyou:eq name='$eyou.field.grade' value='2'} {eyou:type typeid='$eyou.field.typeid' id='field1'} {eyou:eq name='$field1.parent_id' value='$field.id'} {eyou:assign name='$field.currentstyle' value='current' /} {/eyou:eq} {/eyou:type} {/eyou:eq} {$field.typename} {eyou:notempty name="$field.children"} {eyou:channel name="$field.children" id="field2"} {$field2.typename}{$field2.typeid} {/eyou:channel} {/eyou:notempty} {/eyou:channel} 注意field后面数字的用法 30、如何修改page里上一页下一页等文字? 找到/application/lang/cn.php 这个目录下的cn.php文件 31、判断是否首页或者当前选中页面 {eyou:eq name='$Request.param.m' value='Index'} <img src="{eyou:global name='web_cmspath' /}/style/m/skin/images/index2.png">首页 {eyou:else/} <img src="{eyou:global name='web_cmspath' /}/style/m/skin/images/index.png">首页 {/eyou:eq} {eyou:if condition='($eyou.field.typeid == "1")'} <img src="{eyou:global name='web_cmspath' /}/style/m/skin/images/index-ke2.png">课程 {eyou:else/} <img src="{eyou:global name='web_cmspath' /}/style/m/skin/images/index-ke.png">课程 {/eyou:if} 32、判断字段显示内容,例如认证是金领,则添加金色图标,蓝领则添加蓝色等图标等。 $field.vrenzheng 是自定义字段名称 {eyou:if condition='$field.vrenzheng == 金领'} 用金色的图标 {eyou:elseif condition='$field.vrenzheng == 蓝领'} 用蓝色的图标 {eyou:elseif condition='$field.vrenzheng == 白领'} 用白色的图标 {eyou:else /} 灰色图标 {/eyou:if} 33、内置变量输出数据索引与记录顺序,key 表示索引,默认从0开始;i 表示顺序,默认从1开始。 34、广告管理。包括其他标签的选中状态设置 比如设置第2条记录标记选中状态 {eyou:adv pid='1' row='5' currentstyle='active'} <a href='{$field.arcurl}' {eyou:eq name='$i' value='2'} class="{$field.currentstyle}" {/eyou:eq}>{$field.title}</a> {/eyou:adv} 35、 描述:没有记录时输出文案提示,属性empty支持直接传入html语法(html里只支持双引号,禁止单引号) {eyou:adv pid='1' row='3' empty='暂时没有数据'} <a href='{$field.arcurl}'>{$field.title}</a> {/eyou:adv} 36、几个不常见的 标签引用用法 描述:导入外部的css样式文件 {eyou:load file='/static/js/style.css' /} -------------------------------示例2-------------------------------- 描述:导入外部的远程css样式文件 {eyou:load href='http://www.eyoucms.com/skin/css/index.css' /} -------------------------------示例3-------------------------------- 描述:同时加载多个资源文件 {eyou:load file='/static/js/common.js,/static/css/style.css' /} -------------------------------示例4-------------------------------- 描述:还提供了两个标签别名 js 、css、import 用法和 load 一致 {eyou:js file='/static/js/common.js' /} {eyou:css file='/static/js/style.css' /} {eyou:import file='/static/php/test.php' /} 37、字段数量截取 {$field.typename|html_msubstr=###,0,10,true} 富文本截取,过滤html代码 true表示自带省略号,false不带省略号 {$field.typename|text_msubstr=###,0,10,true} 纯文本截取 获取栏目顶级名称 —— gettoptype(当前栏目ID,字段名) 统计栏目文章数 —— GetTotalArc(当前栏目ID),示例:{$eyou.field.typeid|GetTotalArc=###} 38、SQL标签 -------------------------------示例1-------------------------------- 描述:查询数据表ey_arctype,指定栏目ID的基本信息,不使用数据缓存(这里数据表前缀 e_ 替换为 __PREFIX__) {eyou:sql sql='SELECT id,typename,dirname,litpic FROM __PREFIX__arctype WHERE id = 2' cachetime='-1'} {$field.typename} {/eyou:sql} -------------------------------示例2-------------------------------- 描述:内置变量输出数据索引与记录顺序,key 表示索引,默认从0开始;i 表示顺序,默认从1开始。 {eyou:sql sql='SELECT id,typename,dirname,litpic FROM __PREFIX__arctype WHERE id = 2' cachetime='-1'} {$key} - {$i} {/eyou:sql} 效果: 0 - 1 1 - 2 2 - 3 3 - 4 4 - 5 -------------------------------示例3-------------------------------- 描述:自定义变量名 {eyou:sql sql='SELECT id,typename,dirname,litpic FROM __PREFIX__arctype WHERE id = 2' cachetime='-1' id='field2'} {$field2.typename} {/eyou:sql} 39、不常用标签 描述:从1开始,每循环一次自增3,直到21结束 {eyou:for start='1' step='3' end='21'} {$i} {/eyou:for} 效果: 1 4 7 10 13 16 19 描述:在内容页调用属性列表【自动类型】 {eyou:attribute type='auto'} {$attr.name}:{$attr.value} {/eyou:attribute} 40、几个链接的用法 {eyou:diyurl type='login'} 会员登录链接 {eyou:diyurl type='reg'} 会员注册链接 {eyou:diyurl type='sindex'} 搜索主页链接 {eyou:diyurl type='tags'}" tag主页链接 41、mod的用法 描述:每隔3条输出文档记录 {eyou:list pagesize='10' mod='3'} {eyou:eq name='mod' value='0'} <a href='{$field.arcurl}'>{$field.title}</a> {/eyou:eq} {/eyou:list} 描述:mod属性还用于控制一定记录的换行,每3条记录换行一次 {eyou:list pagesize='10' mod='3'} <a href='{$field.arcurl}'>{$field.title}</a> {eyou:eq name='mod' value='0'} <br/> {/eyou:eq} {/eyou:list} 描述:列表显示阅读权限的会员等级值和会员等级名称 {eyou:list typeid='文档ID' limit='0,10' id='field'} 会员等级名称:{$field.level_name} 会员等级值:{$field.level_value} {/eyou:list} 42、列表页排序 [基础用法] 名称:diyurl 功能:列表页、搜索页排序 语法: Tag标签主页URL:{eyou:diyurl type='tags' /} 登录URL:{eyou:diyurl type='login' /} 注册URL:{eyou:diyurl type='reg' /} 搜索主页URL:{eyou:diyurl type='sindex' /} 以下是列表的排序功能 <a {eyou:diyurl type='DefaultUrl' class='ey_active' /}>默认</a> <a {eyou:diyurl type='SalesUrl' class='ey_active' /}>销量</a> <a {eyou:diyurl type='PriceUrl' class='ey_active' /}>价格</a> <a {eyou:diyurl type='NewUrl' class='ey_active' /}>新品</a> <a {eyou:diyurl type='AppraiseUrl' class='ey_active' /}>评价</a> <a {eyou:diyurl type='CollectionUrl' class='ey_active' /}>收藏</a> <a {eyou:diyurl type='ClickUrl' class='ey_active' /}>点击量</a> <a {eyou:diyurl type='DownloadUrl' class='ey_active' /}>下载量</a> 参数: type='' 使用排序则固定值为以上8个,排序效果对应中文 class='' 按自身需要自行定义,无限制 底层字段: 请查阅易优cms官方提供的数据字典,找到表名 ey_archives -------------------------------效果展示-------------------------------- 模板调用标准代码 <style type="text/css"> .ey_active {color: red} </style> <a {eyou:diyurl type='DefaultUrl' class='ey_active' /}>默认</a> <a {eyou:diyurl type='SalesUrl' class='ey_active' /}>销量</a> <a {eyou:diyurl type='PriceUrl' class='ey_active' /}>价格</a> <a {eyou:diyurl type='NewUrl' class='ey_active' /}>新品</a> <a {eyou:diyurl type='AppraiseUrl' class='ey_active' /}>评价</a> <a {eyou:diyurl type='CollectionUrl' class='ey_active' /}>收藏</a> <a {eyou:diyurl type='ClickUrl' class='ey_active' /}>点击量</a> <a {eyou:diyurl type='DownloadUrl' class='ey_active' /}>下载量</a> 43、{eyou:downcount /} 文档下载次数 {eyou:arcclick /} 文章点击次数 ———————————————————————————————————————————————— 44、友情链接加 | 间隔。 一般如果你直接在标题后添加 | ,那么最后一个也会被添加 | 就很不美观。所以判断是最后一个的时候不添加。 或者直接在标题前加 |,同时判断第一个不添加。代码如下: {eyou:eq name='$i' value='1'}{eyou:else /}|{/eyou:eq} ———————————————————————————————————————————————— 45、幻灯图片数量标签 {$__LIST__|count=###}
标签:eyoucms,name,标签,代码,value,field,eyou,eq,id From: https://www.cnblogs.com/ymdi/p/17179093.html