SupSite模板里经常用到以下几个标签的说明_SupeSite教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
一、{block name="" parameter=""}:它对应的是模块功能,实现数据调用的就是它
如调用系统分类的数据:
<!--{block name="category" parameter="type/news/isroot/1/order/c.displayorder/limit/0,12/cachetime/80800/cachename/category"}-->
它有两个参数一个是name,一个是parameter,其中name后面跟的是表名,parameter后面跟的是查询数据的参数,如果对这些参数搞不懂的话可以去看下面的几个教程:
SupSite 7.0 页面文件与模块关系说明:http://faq.comsenz.com/viewnews-507
教您如何读懂模块代码里的参数:http://faq.comsenz.com/viewnews-312
SupeSite7.0数据调用模块参数详解:http://faq.comsenz.com/viewnews-696
parameter 的值中比较特殊的是 sql ,它后面跟的是转义后的 SQL 语句,这种 SQL 语句是在模块功能的高级模式里面产生的,如如调用注册会员数:
<!--{block name="tag" parameter="sql/SELECT%20count%28%2A%29%20AS%20num%20FROM%20supe_members/limit/0,1/cachetime/900/cachename/membernum/tpl/membernum"}--><!--membernum-->
二、#date(日期时间格式, 时间戳)#:它的作用是将时间戳转换为时间格式
日期/时间格式只能是某些字符的组合,关于它们的介绍在最下面。
时间戳,它是一个长度为10的整数,是计算的1970年1月1日零时起所过去的秒数。
如:#date("Y年n月j日", 1248316413)#对应的时间是:2009年7月23日
三、#uid/$uid/op/$param#与#action/参数#,这两个标签解析后将会转换成url
第一种:#uid/$uid/op/$param#
$uid是变量,是会员的UID号且必填的
op是参数,值只能是:bbs,uchphoto,uchblog,news。
#uid/1/op/bbs#它转换成URL是URL?uid-1-op-bbs
第二种:#action/$value1/$value2/$value3/#,它后面的值可以是多个,并没有限制,只要在地址栏里面能够访问,就能写成这个形式。
#action/announcement# 对应的是 URL?action-announcement
#action/forumdisplay/fid/$cat[fid]# 对应的是 URL?action-forumdisplay-fid-$cat[fid],$cat[fid]是模板中的变量,最终会被转换为数值。
四、{template $name},它的作用就是包含其他的模板
$name参数是模板名,如header.html.php,则模板名为:header
在模板文件中都会有这样一句:{template header} 意思就是加载header.html.php模板。
五、{eval php语句},它相当于php中的eval函数,作用就是将大括号中的语句作为php语句来执行
{eval $i=1;},将$i赋值为1
注意:在用{eval php语句}时中间不要出现“{”、“}”,否则系统会无法解析里面的php语句,建议写成一行一句的样式。
六、{echo $value},作用是输出字符
$value 只能是字符串
{eval $value="你好";}
{echo $value}将显示:你好。
七、{if $value},{elseif $value},{else},{/if}:这几个标签组合起来将转换成if/else语句,$value是if语句的条件,在它后面不用写括号
在index.html.php模板文件关于调查的代码中有以下几句用的就是这几个标签:
意思是判断$_SBLOCK['poll']是否为空,为空则显示“暂时没有调查”,不为空则显示出调查的数据。
八、loop循环,有两种形式
1、{loop $value1 value2} {/loop}将转换成foreach($value1 as $value2){}语句,作用是遍历数组
$value1是要遍历的数组,$value2是每次遍历的值
在index.html.php模板文件关于公告的代码中有以下几句用的就是这几个标签:
<!--{loop $_SBLOCK['announce'] $value}-->
<li><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->
意思是遍历$_SBLOCK['announce']数组,将每次结果放入$value里面。
2、{loop $value1 $value2 $value3} {/loop}将转换成foreach($value1 as $value2=>$value3){}的形式,
$value1是要遍历的数组,$value2中数组的key值,$value3是key值对应的值。
在index.html.php模板文件展示导航条的代码中有以下几句用的就是这几个标签:
意思是遍历$channels['menus']数组,将每次遍历的key值放入$key,将结果放入$value。
日期/时间格式允许使用的字符(注意大小写)
1、日期格式:
年:
L:是否为闰年,如果是闰年则为1,否则为0;
o(O的小写形式):ISO-8601格式年份数字。这和Y的值相同,只除了如果 ISO 的星期数(W)属于前一年或下一年,则用那一年。(PHP 5.1.0 新加入),例如1999,2003;
Y:4 位数字表示的完整年份,例如1999,2003;
y:2 位数字表示的年份,例如99,03;
月:
F:月份,完整的文本格式,例如 January 或者 March;
m:数字表示的月份,有前导零,01 到12;
M:三个字母缩写表示的月份,例如Jan到Dec;
n:数字表示的月份,没有前导零,1到12;
t:给定月份所应有的天数,例如28,30,31;
日:
d:月份中的第几天,有前导零的两位数字,例如01 到 31;
D:星期中的第几天,以文本表示,截取对应英文名称的前三个字母,例如Mon到Sun;
j:月份中的第几天,没有前导零,例如1 到 31;
l(L的小写形式):星期几,完整的文本格式,例如Sunday到Saturday;
N:ISO-8601格式数字表示的星期中的第几天(PHP 5.1.0新加入),例如1(表示星期一) 到7(表示星期日);
S:每月天数后面的英文后缀,2 个字符,例如st,nd,rd和th,可以和j一起使用;
w(W的小写形式):星期中的第几天,数字表示,例如0(表示星期日) 到 6(表示星期六);
z(Z的小写形式):年份中的第几天,例如0 到 366;
周数:
W:ISO-8601格式年份中的第几周,每周从星期一开始(PHP 4.1.0新加入),例如:42(当年的第42周);
2、时间(time)格式:
a:小写的上午和下午值,am或pm;
A:大写的上午和下午值,AM或PM;
B:Swatch Internet 标准时,000到999;
g:小时,12 小时格式,没有前导零,1到12;
G:小时,24 小时格式,没有前导零,0到23;
h:小时,12 小时格式,有前导零,01到12;
H:小时,24 小时格式,有前导零,00到23;
i:有前导零的分钟数,00到59;
s:秒数,有前导零,00到59;
如调用系统分类的数据:
<!--{block name="category" parameter="type/news/isroot/1/order/c.displayorder/limit/0,12/cachetime/80800/cachename/category"}-->
它有两个参数一个是name,一个是parameter,其中name后面跟的是表名,parameter后面跟的是查询数据的参数,如果对这些参数搞不懂的话可以去看下面的几个教程:
SupSite 7.0 页面文件与模块关系说明:http://faq.comsenz.com/viewnews-507
教您如何读懂模块代码里的参数:http://faq.comsenz.com/viewnews-312
SupeSite7.0数据调用模块参数详解:http://faq.comsenz.com/viewnews-696
parameter 的值中比较特殊的是 sql ,它后面跟的是转义后的 SQL 语句,这种 SQL 语句是在模块功能的高级模式里面产生的,如如调用注册会员数:
<!--{block name="tag" parameter="sql/SELECT%20count%28%2A%29%20AS%20num%20FROM%20supe_members/limit/0,1/cachetime/900/cachename/membernum/tpl/membernum"}--><!--membernum-->
二、#date(日期时间格式, 时间戳)#:它的作用是将时间戳转换为时间格式
日期/时间格式只能是某些字符的组合,关于它们的介绍在最下面。
时间戳,它是一个长度为10的整数,是计算的1970年1月1日零时起所过去的秒数。
如:#date("Y年n月j日", 1248316413)#对应的时间是:2009年7月23日
三、#uid/$uid/op/$param#与#action/参数#,这两个标签解析后将会转换成url
第一种:#uid/$uid/op/$param#
$uid是变量,是会员的UID号且必填的
op是参数,值只能是:bbs,uchphoto,uchblog,news。
#uid/1/op/bbs#它转换成URL是URL?uid-1-op-bbs
第二种:#action/$value1/$value2/$value3/#,它后面的值可以是多个,并没有限制,只要在地址栏里面能够访问,就能写成这个形式。
#action/announcement# 对应的是 URL?action-announcement
#action/forumdisplay/fid/$cat[fid]# 对应的是 URL?action-forumdisplay-fid-$cat[fid],$cat[fid]是模板中的变量,最终会被转换为数值。
四、{template $name},它的作用就是包含其他的模板
$name参数是模板名,如header.html.php,则模板名为:header
在模板文件中都会有这样一句:{template header} 意思就是加载header.html.php模板。
五、{eval php语句},它相当于php中的eval函数,作用就是将大括号中的语句作为php语句来执行
{eval $i=1;},将$i赋值为1
注意:在用{eval php语句}时中间不要出现“{”、“}”,否则系统会无法解析里面的php语句,建议写成一行一句的样式。
六、{echo $value},作用是输出字符
$value 只能是字符串
{eval $value="你好";}
{echo $value}将显示:你好。
七、{if $value},{elseif $value},{else},{/if}:这几个标签组合起来将转换成if/else语句,$value是if语句的条件,在它后面不用写括号
在index.html.php模板文件关于调查的代码中有以下几句用的就是这几个标签:
- <!--{if empty($_SBLOCK['poll'])}-->
- <li>暂时没有调查</li>
- <!--{else}-->
- <!--{loop $_SBLOCK['poll'] $value}-->
- <li><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
- <!--{/loop}-->
- <!--{/if}-->
意思是判断$_SBLOCK['poll']是否为空,为空则显示“暂时没有调查”,不为空则显示出调查的数据。
八、loop循环,有两种形式
1、{loop $value1 value2} {/loop}将转换成foreach($value1 as $value2){}语句,作用是遍历数组
$value1是要遍历的数组,$value2是每次遍历的值
在index.html.php模板文件关于公告的代码中有以下几句用的就是这几个标签:
<!--{loop $_SBLOCK['announce'] $value}-->
<li><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
<!--{/loop}-->
意思是遍历$_SBLOCK['announce']数组,将每次结果放入$value里面。
2、{loop $value1 $value2 $value3} {/loop}将转换成foreach($value1 as $value2=>$value3){}的形式,
$value1是要遍历的数组,$value2中数组的key值,$value3是key值对应的值。
在index.html.php模板文件展示导航条的代码中有以下几句用的就是这几个标签:
- <!--{loop $channels['menus'] $key $value}-->
- <li><a href="$value[url]">$value[name]</a></li>
- <!--{/loop}-->
意思是遍历$channels['menus']数组,将每次遍历的key值放入$key,将结果放入$value。
日期/时间格式允许使用的字符(注意大小写)
1、日期格式:
年:
L:是否为闰年,如果是闰年则为1,否则为0;
o(O的小写形式):ISO-8601格式年份数字。这和Y的值相同,只除了如果 ISO 的星期数(W)属于前一年或下一年,则用那一年。(PHP 5.1.0 新加入),例如1999,2003;
Y:4 位数字表示的完整年份,例如1999,2003;
y:2 位数字表示的年份,例如99,03;
月:
F:月份,完整的文本格式,例如 January 或者 March;
m:数字表示的月份,有前导零,01 到12;
M:三个字母缩写表示的月份,例如Jan到Dec;
n:数字表示的月份,没有前导零,1到12;
t:给定月份所应有的天数,例如28,30,31;
日:
d:月份中的第几天,有前导零的两位数字,例如01 到 31;
D:星期中的第几天,以文本表示,截取对应英文名称的前三个字母,例如Mon到Sun;
j:月份中的第几天,没有前导零,例如1 到 31;
l(L的小写形式):星期几,完整的文本格式,例如Sunday到Saturday;
N:ISO-8601格式数字表示的星期中的第几天(PHP 5.1.0新加入),例如1(表示星期一) 到7(表示星期日);
S:每月天数后面的英文后缀,2 个字符,例如st,nd,rd和th,可以和j一起使用;
w(W的小写形式):星期中的第几天,数字表示,例如0(表示星期日) 到 6(表示星期六);
z(Z的小写形式):年份中的第几天,例如0 到 366;
周数:
W:ISO-8601格式年份中的第几周,每周从星期一开始(PHP 4.1.0新加入),例如:42(当年的第42周);
2、时间(time)格式:
a:小写的上午和下午值,am或pm;
A:大写的上午和下午值,AM或PM;
B:Swatch Internet 标准时,000到999;
g:小时,12 小时格式,没有前导零,1到12;
G:小时,24 小时格式,没有前导零,0到23;
h:小时,12 小时格式,有前导零,01到12;
H:小时,24 小时格式,有前导零,00到23;
i:有前导零的分钟数,00到59;
s:秒数,有前导零,00到59;
查看更多 supesite教程 supesite模板
相关SupeSite教程:
- SupeSite默认焦点轮转图简单美化方法
- SupeSite7.5 让资讯发布日期更加个性化
- SupeSite7.5 让会员中心拥有不同的title和提示信息
- SupeSite7.5 benbaHTML生成方案第一版
- SupeSite7.5发布评论后直接跳转回到文章页面的完美方法
- SupSite7.5单个页面频道编辑后无法访问
- SupSite7.5登陆后台先验证权限问题解决方案
- SupSite模型无权限评论修改方案
- SupSite页面文件与模块关系说明
- 升级SupeSite7.5出现Errno.: 1054的解决方法
- SupeSite7.5 非gbk版本程序,在回复某帖子时回复被截断修改方案
- SupeSite 7.0 模板CSS修改全攻略教程
- 相关链接:
- 教程说明:
SupeSite教程-SupSite模板里经常用到以下几个标签的说明。