SupeSite模板参数说明

来源:互联网 发布:linux如何设置ip 编辑:程序博客网 时间:2024/05/17 05:01

很多用户想自己修改模板,但是不清楚 SupeSite 的模板机制和模板参数,特此做该教程说明供大家参考。

我们在 SupeSite 系统的每个模板里,都可以看到类似的一段代码:

复制内容到剪贴板Code:

<!--{block name="spacenews" parameter="dateline/2592000/haveattach/1/showattach/1/order/i.viewnum DESC/showdetail/1/messagelen/180/messagedot/1/limit/0,1/cachetime/98800/subjectlen/30/cachename/hotnews/tpl/data"}--><div><h3>月点击图文头条</h3><!--{loop $_SBLOCK[hotnews] $value}--><p><a href="$value[url]"><img src="$value[a_thumbpath]" alt="$value[subject]" /></a>$value[message]...<a href="$value[url]">阅读更多</a></p><!--{/loop}--></div>

这里给大家解释下这段代码的作用:

一、

复制内容到剪贴板Code:

<!--{block name="spacenews" parameter="dateline/2592000/haveattach/1/showattach/1/order/i.viewnum DESC/showdetail/1/messagelen/180/messagedot/1/limit/0,1/cachetime/98800/subjectlen/30/cachename/hotnews/tpl/data"}-->

包含两个部分的内容:

1、根据 parameter 后面给出的参数在数据库里查询某个数据表,将查询到的所有资源存放到 $_SBLOCK[变量名] 数组里。通俗的说法是,这段代码相当与一段 SQL 的 select 语句,查询的数据表是 name 后面的参数,查询的条件是 parameter 后面的参数,最后查询的果存放到 $_SBLOCK[变量名] ,变量名是 cachename 后面的参数。

2、确定这部分数据的缓存时间:cachetime 后面的参数,单位是秒;确定这部分数据在页面的显示模板:tpl后面的参数,如:data,那么这段数据显示的模板是:./styles/data.html.php。大家可以看到 ./styles/data.html.php 这个文件夹里没有定义任何样式,所以必须在 block 代码下方定义样式。

二、

复制内容到剪贴板Code:

<!--{loop $_SBLOCK[hotnews] $value}-->...<!--{/loop}-->

loop 的含义是:将 $_SBLOCK[hotnews] 数组里的资源,逐一存放到 $value 数组里。注意:loop 和 foreach() 函数的作用一样。

三、

复制内容到剪贴板Code:

<p><a href="$value[url]"><img src="$value[a_thumbpath]" alt="$value[subject]" /></a>$value[message]...<a href="$value[url]">阅读更多</a></p>

这一段内容,都是 html 标签,<a href="$value[url]">...</a>,含义是在页面展示一个 a 标签,a 标签的指向是 $value[url]。一般情况下,我们都不知道 $value[] 数组里存放的内容是什么,我们可以应用的元素有哪些。这时,我们可以使用这个语句将 $value[] 数组打印到页面上。<!--{eval print_r($value);}-->

四、介绍常用的 parameter 参数含义

请看这里:http://www.discuz.net/viewthread.php?tid=681076