
Archives for 日常随笔
【基础用法】
名称:for
功能:数据/记录循环输出标签(注:类似与volist、foreach标签)
语法:
{eyou:for start='开始值' end='结束值'}
{$i}
{/eyou:for}
php解析后的代码是:
for ($i = 1; $i < 100; $i += 1) {
echo $i;
}
参数:
start='' 开始值
end='' 结束值
comparison='' 比较操作符,默认是小于(lt),可以写大于(gt)
step='' 自增值,默认为1,每循环一次加1
name='' 循环变量名
底层字段:
无
【更多示例】
-------------------------------示例1--------------------------------
描述:从1开始,每循环一次自增3,直到21结束
{eyou:for start='1' step='3' end='21'}
{$i}
{/eyou:for}
效果:
1
4
7
10
13
16
19
...more»
【基础用法】
名称:range
功能:范围判断标签包括in notin between notbetween四个标签,都用于判断变量是否中某个范围。
语法:
{eyou:range name='$eyou.field.typeid' value='1,2,3,4' type='in'}
输出内容
{/eyou:range}
参数:
name='' 变量
value='' 范围值
type='' 标签类型
type='in' 在指定列表值内
type='notin' 不在指定列表值内
type='between' 在指定区间范围内
type='notbetween' 不在指定区间范围内
底层字段:
无
【更多示例】
-------------------------------示例1--------------------------------
描述:当前栏目ID在指定列表值1,2,3内,则显示“EyouCms”字样
{eyou:range name='$eyou.field.typeid' value='1,2,3' type='in'}
EyouCms
{/eyou:range}
-------------------------------示例2--------------------------------
描述:当前页面是列表页、内容页,则显示“EyouCms”字样
{eyou:range name='$Think.const.ACTION_NAME' value='lists,view' type='in'}
EyouCms
{/eyou:range}
-------------------------------示例3--------------------------------
描述:当前页面不是首页、产品模型,则显示“EyouCms”字样
{eyou:range name='$Think.const.CONTROLLER_NAME' value='Index,Product' type='notin'}
EyouCms
{/eyou:range}
-------------------------------示例4--------------------------------
描述:当前内容页aid在指定区间范围1~10内,则显示“EyouCms”字样
{eyou:range name='$eyou.field.aid' value='1,10' type='between'}
EyouCms-在1~10区间范围内
{/eyou:range}
-------------------------------示例5--------------------------------
描述:当前内容页aid不在指定区间范围1~10内,则显示“EyouCms”字样
{eyou:range name='$eyou.field.aid' value='1,10' type='notbetween'}
EyouCms-在1~10区间范围内
{/eyou:range}
-------------------------------示例6--------------------------------
描述:可以使用else标签把between、notbetween两个用法合并
{eyou:range name='$eyou.field.aid' value='1,10' type='between'}
在1~10区间范围内
{eyou:else /}
不在1~10区间范围内
{/eyou:range}
...more»
【基础用法】
名称:weapp
功能:用于网站安装更多的插件,建议放置在文件模板的底部。
语法:
{eyou:weapp type='default' /}
参数:
type='' 类型
底层字段:
无
...more»
【基础用法】
名称:flink
功能:用于获取友情链接列表。
语法:
{eyou:flink type='text' row='30' titlelen='15'}
<a href='{$field.url}'>{$field.title}</a>
{/eyou:flink}
参数:
type='' 链接类型,text为文字链接,image为图片链接,all为全部链接
row='30' 链接类型数量
titlelen='100' 标题长度
empty='' 没有数据时显示的文案
mod='' 每隔N行输出的内容
id='' 可以任意指定循环里的变量名替代field,假设id='field1',模板调用如:{$field.title} 变成 {$field1.title}
底层字段:
请查阅易优Cms官方提供的数据字典,找到表名 ey_links
-------------------------------效果展示--------------------------------1,友情链接调用模板调用代码
<div class="links"> <span>友情链接:</span> {eyou:flink titlelen='20' row='5' type='1'} <a href='{$field.url}' {$field.target}>{$field.title}</a> {/eyou:flink} </div>
...more»
【基础用法】
名称:无
功能:作用于标签变量
语法:
{$field.typename|html_msubstr=###,0,10,true}
注意:函数与字段名之间用竖线(|)隔开,###表示当前变量
参数:
无
底层字段:
无
函数列表:
日期格式化 —— MyDate(日期格式, 时间字段)纯文本长度截取 —— text_msubstr(字符串, 开始位置, 截取长度, 是否显示省略号)
富文本长度截取 —— html_msubstr(字符串, 开始位置, 截取长度, 是否显示省略号)
获取栏目顶级名称 —— gettoptype(当前栏目ID,字段名)
【更多示例】
-------------------------------示例1--------------------------------
描述:文档内页更新日期格式化
{$eyou.field.update_time|MyDate='Y-m-d H:i:s',###}
效果:
2018-05-20 13:14:00
-------------------------------示例2--------------------------------
描述:arclist标签里文档的更新日期格式化
{eyou:arclist typeid='2' limit='0,3'}
{$field.update_time|MyDate='Y-m-d',###}
{/eyou:arclist}
效果:
2018-05-20
2018-05-21
2018-05-22
-------------------------------示例3--------------------------------
描述:截取arclist标签里文档标题的10个字符(纯文本截取,自带省略号)
{eyou:arclist typeid='2' limit='0,3'}
{$field.title|msubstr=###,0,11,true}
{/eyou:arclist}
效果:
EyouCms简单易用…
EyouCms简单好用…
EyouCms简单粗暴…
-------------------------------示例4--------------------------------
描述:截取arclist标签里文档内容的前11个字符(富文本截取,自动过滤html代码,自带省略号)
{eyou:arclist typeid='2' limit='0,3'}
{$field.content|html_msubstr=###,0,11,true}
{/eyou:arclist}
效果:
EyouCms简单易用…
-------------------------------示例5--------------------------------
描述:获取指定栏目的最顶级栏目名称
{eyou:type type='self'}
{$field.id|gettoptype=###,typename}
{/eyou:type}
...more»
【基础用法】
名称:searchform
功能:文档标题搜索,默认搜索整站
语法:
{eyou:searchform type='default'}
<form method="get" action="{$field.action}">
<input type="text" name="keywords" />
<input type="submit" value='点击搜索' />
{$field.hidden}
</form>
{/eyou:searchform}
参数:type='default' 默认搜索方式,目前暂时只有default;
typeid='' 默认搜索所有栏目的文档标题,也可以指定栏目id针对某个栏目搜索;channelid='' 默认搜索所有模型的文档标题,也可以指定模型id针对某个模型搜索
底层字段:
无【更多示例】-------------------------------示例1--------------------------------描述:整站搜索
{eyou:searchform type='default'}
<form class="sidebar-search" method="get" action="{$field.action}">
...more»
【基础用法】
名称:tag
功能:TAG调用
语法:
{eyou:tag sort='now' getall='0' row='100'}
<a href='{$field.link}'>{$field.tag}</a>
{/eyou:tag}
参数:
aid='' 文档ID,在内容页可以不设置该属性
typeid='' 栏目ID,调取某个栏目下的全部TAG
row='100' 返回广告列表总数
getall='' 获取类型,0为当前内容页TAG标记,1为获取全部TAG标记sort='' 标签排序方式
sort='new' 按最新排序
sort='rand' 随机排序
sort='week' 按周统计排序
sort='month' 按月统计排序
sort='hot' 按点击数排序
sort='total' 按文档数排序
style='' 应用样式class类名
name='' 变量
empty='' 没有数据时显示的文案
mod='' 每隔N行输出的内容
id='' 可以任意指定循环里的变量名替代field,假设id='field1',模板调用如:{$field.title} 变成 {$field1.title}底层字段:
请查阅易优Cms官方提供的数据字典,找到表名 ey_tagindex【更多示例】-------------------------------示例1--------------------------------描述:输出当前文档页TAG标记
{eyou:tag getall='0'}
<a href='{$field.link}'>{$field.tag}</a>
{/eyou:tag}
-------------------------------示例2--------------------------------描述:在任何页面输出任何文档的TAG标记
{eyou:tag getall='0' aid='3'}
<a href='{$field.link}'>{$field.tag}</a>
{/eyou:tag}
-------------------------------示例3--------------------------------描述:输出指定栏目ID下的全部TAG标记
{eyou:tag getall='1' typeid='2' row='50' sort='hot'}
<a href='{$field.link}'>{$field.tag}</a>
{/eyou:tag}
-------------------------------示例5--------------------------------描述:内置变量输出数据索引与记录顺序,key 表示索引,默认从0开始;i 表示顺序,默认从1开始。
{eyou:tag getall='1' typeid='3' row='5'}
{$key} - {$i}
{/eyou:tag}
效果:0 - 11 - 22 - 33 - 44 - 5-------------------------------示例6--------------------------------描述:没有记录时输出文案提示,属性empty支持直接传入html语法(html里只支持双引号,禁止单引号)
{eyou:tag getall='1' typeid='3' empty='暂时没有数据'}
<a href='{$field.link}'>{$field.tag}</a>
{/eyou:tag}
-------------------------------示例7--------------------------------描述:自定义变量名
{eyou:tag getall='1' typeid='3' id='field2'}
<a href='{$field2.link}'>{$field2.tag}</a>
{/eyou:tag}
...more»
【基础用法】
名称:field
功能:获取channelartlist标签里的字段值,field标签只能在channelartlist标签里使用。
语法:
{eyou:channelartlist typeid='栏目ID' type='son' row='20'}
{eyou:field name='typename' /}
{/eyou:channelartlist}
参数:
name='' 字段名
底层字段:
请查阅易优Cms官方提供的数据字典,找到表名 ey_arctype
【更多示例】
-------------------------------示例1--------------------------------描述:输出指定栏目ID的下级栏目的文档列表
{eyou:channelartlist typeid='栏目ID' type='son' row='20'}
<a href='{eyou:field name='typeurl' /}'>{eyou:field name='typename' /}</a>
{eyou:arclist limit='0,10' titlelen='30'}
<a href='{$field.arcurl}'>{$field.title}</a>
{/eyou:arclist}
{/eyou:channelartlist}
-------------------------------示例2--------------------------------描述:输出截取栏目描述的长度
{eyou:channelartlist typeid='栏目ID' type='son' row='20'}
<a href='{eyou:field name='typeurl' /}'>{eyou:field name='seo_description|html_msubstr=###,0.4' /}</a>
{/eyou:channelartlist}
...more»
【基础用法】
名称:load
功能:资源文件加载,比如:css/js
语法:
{eyou:load href='/static/js/common.js' ver='on' /}
参数:
file='' 资源文件路径
href='' 远程资源文件URL
ver='' 开启版本号自动刷新浏览器缓存
底层字段:
无
【更多示例】
-------------------------------示例1--------------------------------
描述:导入外部的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' /}
...more»
【基础用法】
名称:adv
功能:获取广告列表内容。
语法:
{eyou:adv pid='1' row='3'}
<a href='{$field.links}'><img alt='{$field.title}' src='{$field.litpic}' /></a>
{/eyou:adv}
参数:
pid='' 广告位置ID
row='10' 返回广告列表总数
currentstyle='' 应用样式class类名
orderby='now' 文档排序方式
----orderby='hot' 或 orderby='click' 表示按点击数从高到低排序
----orderby='now' 按发布时间最新排序
----orderby='sort_order' 按排序号从小到大排序
----orderby='rand' 随机排序
----orderby='sort_order asc, id desc' 自定义多字段组合排序
empty='' 没有数据时显示的文案
mod='' 每隔N行输出的内容
id='' 可以任意指定循环里的变量名替代field,假设id='field1',模板调用如:{$field.title} 变成 {$field1.title}
底层字段:
请查阅易优Cms官方提供的数据字典,找到表名 ey_ad
【更多示例】
-------------------------------示例1--------------------------------
描述:每3条记录输出如下html元素
{eyou:adv pid='1' row='9' mod='3'}
<a href='{$field.links}'><img alt='{$field.title}' src='{$field.litpic}' /></a>
{eyou:eq name='mod' value='0'}
<hr />
{/eyou:eq}
{/eyou:adv}
-------------------------------示例2--------------------------------描述:第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}
-------------------------------示例3--------------------------------描述:自定义查询条件
{eyou:adv pid='1' row='5' orderby='click'}
<a href='{$field.links}'><img alt='{$field.title}' src='{$field.litpic}' /></a>
{/eyou:adv}
-------------------------------示例4--------------------------------描述:自定义查询条件
{eyou:adv pid='1' row='5' where='pid=广告位ID and start_time > 时间戳'}
<a ...more»
