首頁 >php教程 >PHP开发 >Discuz 模板語句分析及知識技巧

Discuz 模板語句分析及知識技巧

黄舟
黄舟原創
2016-12-14 13:29:351377瀏覽

一、模板 調用 
例如在某個模板中,想調用另一個模板中的內容,可以用下面的語句: 
{template xxx} 
假設,建立了一個新模板名字叫"abc.htm" ,在後台 模板編輯時只會顯示為"acb",需要在index 中呼叫它,那麼就在index 中適當位置加入{template abc}
那麼就會自動代用它。

相關實例: index 模板中,最頂有{template header},最底有{template footer}
相關問題: 
那麼在這個abc 模板中需要有

嗎?
不需要的!想要顯示什麼,就寫什麼,因為它只是整個網頁的一部分! 都已經在header和footer模板中了。


二、固定參數 
$seohead --- 後台設定 的頭部資訊
$charset --- config.inc.php設定語言字元集,必不可少,無法刪除! 
$extrahead --- 控制論壇 自動跳轉參數,必不可少,不能刪除! 
{eval updatesession();} --- 更新論壇 session 表的參數,必不可少,不能刪除! 
{eval output();} --- 結束論壇輸出,必不可少,不能刪除! 

以上的參數以Discuz ! 4.0為準,這些參數會因應不同版本而有所不同! 
還有一些 $xxx 的也是一些參數如非插件 作者或程式 開發請勿亂修改!


三、資料 判斷 
1、在範本中會常常見到xxxxx --- 如果判斷了$discuz_uid ,即顯示下面(111 )
$discuz_userss: {langlogo ut} 

-- - 如果有$maxpmnum,即顯示下面資料,否則不顯示(判斷2)
| {lang pm} 
--- 結束了這個判斷(判斷2) 

| {lang memcp} 

--- 如果$adminid在1,2,3這三個範圍內,即顯示下面資料,否則不顯示(判斷3)
| {lang admincp}
--- 結束了這個判斷(判斷3) 

--- 如果取得不了$discuz_uid ,則顯示下面資料 

{lang guest}: {lang register} a>
|
{lang login} 

--- 結束這個判斷(判斷1)

2、在模板中會常見到xxx的語句。 
這個為循環語句,直到資料輸出完畢,就會自動結束。
透過這些文法,能夠達到把同一系列的資料進行循環顯示效果。

相關實例: 
header 範本中

複製內容到剪貼簿

程式碼:

--- 循環1開始,判斷外掛程式循環1開始,判斷外掛
--- 循環2開始,判斷插件模組 
| $module[url]  
--- 結束循環1

四、語言呼叫 
在模板中,常會看到{lang xxx}這樣的語句。它就是呼叫語言包中的詞語用的。 
而在模板中會呼叫的大部分都是 templates.lang.php 的。
下面看語言包的結構:

複製內容到剪貼簿

代碼:

-- 宣告php語言開始
$language = array
( --- 以上宣告語言包定義開始 

'title' => '標題', 
調用字元顯示文字 
'never' => '標題', 
調用字元顯示文字 
'never' => '從未從未調用', 
調用字元顯示文字
....

); --- 宣告語言包定義結束

?> -- 宣布php語言結束

相關實例: 
假設,我們增加一個語言調用,在 
'title ' => '標題',
上一行添加 
'abc' => '這是測試語言調用',
最後的, 是比不可少的,還有調用字符和顯示文字,都必須使用'' 引起。
增加以後,到模板中,就能調用它,模板中寫{lang abc} 
那麼顯示出來就直接顯示: 這是測試語言調用 


特別注意: 增加語言或修改語言包後,必須更新緩存哦! 


五、風格 參數呼叫 
在範本中常見到{XXXXX}的語句。 {}中的必須是大寫。

這些都是呼叫風格配色方案中的參數。您可以自己添加,方法 如下:
1, 進入界面風格-> 介面風格-> 您要添加參數的風格點[詳情] 
2, 進入後最下面,有兩欄可以填寫,一個是變量,一個是替換內容

相關實例: 
變數寫入FOOTERCOLOR (注意必須使用大寫) 
取代內容寫入#003399
提交後,修改模板,範本中寫測試風格自訂變數
那麼出來的效果,這個測試風格自訂變數就會按照填寫的替換內容的顏色來顯示了。
經過上面說了那麼多,對於修改模板的時候需要注意或者可以應用到的應該讓您了解不少了! 

希望對您有幫助,更多相關內容請關注PHP中文網(www.php.cn)!

🎜🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn