YXcms其他标签及常用函数

YXcms其他标签
YXcms面包屑导航标签
当前位置:<a href="{url()}">首页</a> >
{loop $daohang $vo}
  <a href="{$vo['url']}">{$vo['name']}</a> >
{/loop}1.
2.
3.
4.
 
YXcms 自定义表信息调用
{extend:{extable=(自定义表表名) field=(自定义表字段) order=(addtime desc,id desc) where=(ispass='1')}}
 [extend:字段]
 {msubstr($extend['字段'],0,220)} 截取中文字符
 {substr($extend['字段'],0,220)} 截取英文字符串
 {html_out($extend['字段'])} 用于还原过滤后的文章内容
{/extend}
以上调用指定自定义表中信息1.
2.
3.
4.
5.
6.
7.
 
YXcms 友情链接调用
{link:{table=(link) field=(name,url,type,picture,logourl) order=(norder desc,id desc) where=(ispass='1')}}
 {if $link['type']==1} <a href="[link:url]" target="_blank">[link:name]</a>
 {elseif $link['type']==2} <a href="[link:url]" target="_blank"><img src="[link:picturepath]" alt="[link:name]"></a>
 {/if}
{/link}
以上调用友情链接名称、链接、图片
$link['type']==1 - 友情链接类型为文字类型
$link['type']==2 - 友情链接类型为图片类型1.
2.
3.
4.
5.
6.
7.
8.
9.
 
YXcms TAGS标签调用
{tag:{table=(tags) field=(name,mesnum) order=(hits desc,id desc) limit=(5)}}
 <a href="{url('default/index/search',array('keywords'=>urlencode($tag['name']),'type'=>'all'))}">[tag:name]</a>
{/tag}
以上调用TAG名称、链接
[tag:mesnum] - TAGS文章数1.
2.
3.
4.
5.
6.
 
YXcms模板专有变量
{$page}:翻页信息。有效范围:资讯列表、图集列表、留言列表、搜索结果页。
{$daohang}:面包屑导航。有效范围:资讯列表、资讯内容、图集列表、图集内容、单页。
{$sortlist}:当前栏目下子分类栏目信息,参照{$sorts}使用。有效范围:资讯列表、图集列表、单页。
{$rootid}:当前栏目的顶级分类栏目ID。有效范围:资讯列表、图集列表、单页。
{$upnews}:上一篇信息(一维数组)。有效范围:资讯内页、图集内页。
    {$upnews['method']}:控制器/方法
    {$upnews['id']}:ID
    {$upnews['title']}:标题
{$downnews}:下一篇信息(一维数组)。有效范围:资讯内页、图集内页。
    {$downnews['method']}:控制器/方法
    {$downnews['id']}:ID
    {$downnews['title']}:标题
{$extinfo}:拓展字段信息(二维数组)。有效范围:使用拓展字段栏目的资讯内页、图集内页。
    {$extinfo[]['name']}:字段名称
    {$extinfo[]['value']}:字段值1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
 
YXcms常量变量标签
{变量名}:输出变量
{常量名}:输出常量
例:
{$name}:输出变量$name
{CONSTANCE}:输出常量CONSTANCE1.
2.
3.
4.
5.
 
YXcms时间格式化标签
PHP中使用的是Unix时间戳:以1970 年 1 月 1 日 00:00:00到某一时刻经过的秒数来计时
{date($t,Y-m-d H:i:s)} :将$t时间戳转换为 Y-m-d H:i:s 格式即:年-月-日 小时:分钟:秒。例:1985-11-15 12:00:00
{date(Y-m-d H:i:s)} : 将当前时间戳转换为 Y-m-d H:i:s 格式即:年-月-日 小时:分钟:秒。例:2013-4-1 12:00:001.
2.
3.
 
YXcms模版支持php标签
当我们需要在模板中调用php代码时,一般会采用<?php 代码  ?>,现在你也可以使用这种方式调用:{php 代码 }1.
 
YXcms函数标签
模板中我们用这种方式来调用函数:{函数名(参数1,参数2,....)}
以最常见的网址格式化函数url()在模板中调用为例:
输出网站首页URL地址:{url('default/index/index')}
输出ID为100001的资讯文章URL地址:{url('default/news/content',array('id'=>100001))}1.
2.
3.
4.
 
YXcms if 标签
{if 条件1}
 .....
{elseif 条件2}
 .....
{else}
 ....
{/if}
例如在前台模板news_content.php中有这样一个判断:
{if !empty($upnews)}
 <a href="{url($upnews['method'],array('id'=>$upnews['id']))}">{$upnews['title']}</a>
{else} 
 没有了....
{/if}
以上判断是否还有上一篇文章,有的话输出上一篇文章链接,没有的话输出'没有了'1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 
YXcms for 标签
{for 三元条件}
 循环体..
{/for}
例:
{for $i=0;$i<3;$i++}
 这是第{$i}个元素<br>
{/for}
以上输出结果为:
 这是第0个元素
 这是第1个元素
 这是第2个元素1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
 
YXcms loop 标签
loop是php中foreach函数的应用
{loop 数组 数组键值 数组值}
 循环体..
{/loop}
例:
有这样一个数组变量:$arr=array('张三'=>'20岁','李四'=>'24岁','王二小'=>'28岁') ;
在模板中使用loop输出:
{loop $arr $key $vo}
 {$key}的年龄是{$vo} <br>
{/loop}
输出结果为:
    张三的年龄是20岁
    李四的年龄是24岁
    王二小的年龄是28岁1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 
YXcms模板文件包含
模板文件相互调用采用这种方式:
{include file="模板文件名"}
例:
在当前模板文件中包含arightCom.php模板文件的调用方式:
{include file="arightCom"}1.
2.
3.
4.
5.
 
YXcms layout布局
在实际应用中如果每个模板都有共用的部分我们可以采用layout布局方式:
模板layout.php文件中:
 共用部分....
     {include file="$__template_file"} 
 共用部分....
这样访问所有页面都必须先通过layout.php然后再{include file="$__template_file"} 来包含对应页面模板1.
2.
3.
4.
5.
6.
 
YXcms 查表输出
模板中直接查询数据库表输出数据:
 {自定义数组名:{table=(数据库表名) where=(查询条件) limit=(查询条数) order=(排序方式)}} 
 {/自定义数组名}
例:调用资讯栏目ID为100001下3条数据内容
{news:{table=(news) field=(title,color,addtime) order= (recmd DESC,norder desc,id desc)where=(ispass='1'AND like '%100001%') limit=(3)}}
 这是第[news:i]条 - 标题颜色:[news:color] - 标题:[news:title] - 截取3字符后标题:[news:title $len=3] - 时间:[news:addtime] <br>
{/news}
以上输出结果:
 这是第1条 -  标题颜色:#333 - 标题:新一代iPad 3 5.1不受限制的越狱演示 - 截取3字符后标题:新一代... - 时间:2012-07-12 23:26:20 
 这是第2条 - 标题颜色:#333 - 标题:自助建站与定制开发的区别 - 截取3字符后标题:自助建... - 时间:2012-07-12 23:23:05 
 这是第3条 - 标题颜色:#333 -  标题:网站推广的方法 - 截取3字符后标题:网站推... - 时间:2012-07-12 23:03:22 
查表方式支持二重循环,但是对数据库负载较大,并不常用,在这里不做介绍1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 
YXcms 数据碎片
{piece:自定义名称}
例:在后台:信息管理 -> 信息碎片管理 -> 添加信息碎片中添加调用标识为{piece:test},内容为'测试信息' 的碎片信息。
在前台模板中调用{piece:test}
输出结果为:测试信息1.
2.
3.
4.
 
YXcms 常用函数
函数:text_in($str)
说明:文本输入,用于textarea文本区域的内容换行和空格处理
参数:
$str:字符串
函数:text_out($str)
说明:文本输出,用于textarea文本区域的内容换行和空格处理
参数:
$str:字符串
函数: html_in($str)
说明:html代码输入,用于在线编辑器提交的数据过滤, 
注意此函数会过滤掉iframe和js代码,且html_out()不能还原js代码
参数:
$str:含html代码的字符串。
函数:html_out($str)
说明:html代码输出,用于还原过滤后的文章内容
参数:
$str:经过转义后的html代码字符串
函数:get_client_ip()
说明:获取客户端ip地址
参数:
如果能成功获取ip地址,返回ip地址,否则返回'unknown'。
使用方法:
    $ip=get_client_ip();
    
函数:msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true)
说明:中文字符串截取
参数:
$str:要截取的字符串。
$start:开始截取的字符,一般从0开始。
$length:截取的字符长度,按字符计算,不是按字节计算。
$charset:字符串的编码。utf-8,gbk,gb2312,big5
$suffix:字符串过长,截断之后是否显示"……"。
使用方法:
    msubstr($str, 0, 20);//截取20个字符
    
函数:is_email($user_email)
说明:检查是否是正确的邮箱地址,是则返回true,否则返回false
参数:
$user_email:给定的邮箱地址。
使用方法:
    if(!is_email($user_email))
    {
        echo '邮箱地址不正确';
    }

你可能感兴趣的:(YXcms其他标签及常用函数)