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模板里經常用到以下幾個標簽的說明
。