97久久国产亚洲精品超碰热,成人又色又爽的免费网站,色偷偷女人的天堂a,男女高潮喷水在线观看,国内精品一线二线三线区别在哪里

返回列表 發(fā)帖
查看: 895|回復(fù): 3

[X5開(kāi)發(fā)特性] X5 的細(xì)胞模板機(jī)制

79

主題

341

回帖

744

積分

管理員

貢獻(xiàn)
19 點(diǎn)
金幣
41 個(gè)
樓主
發(fā)表于 2024-11-11 10:45:24 | 只看樓主 |只看大圖 |倒序?yàn)g覽 |閱讀模式
從 X5 開(kāi)始,我們提供了細(xì)胞模板機(jī)制,在這個(gè)機(jī)制下,我們提供了有效且安全的模板修改方式,對(duì)于熟悉簡(jiǎn)單 HTM 知識(shí)的站長(zhǎng)來(lái)說(shuō),可以簡(jiǎn)單修改模板的內(nèi)容。

這些都是新增的模板語(yǔ)法,細(xì)胞模板語(yǔ)法分為 2 類 {cell} 和 {cells}。

{cell} 語(yǔ)法為 "{cell file}",file 為 /template/xxx/cell/ 目錄下的文件,比如 {cell forum/threadlist/subject} 為 /template/xxx/cell/forum/threadlist/subject.htm 文件。
cell 的意義是把模板語(yǔ)法中包含 php 邏輯相關(guān)的內(nèi)容進(jìn)行封裝,不讓用戶修改,進(jìn)行封裝處理的一種方式

比如你可以在 cell 文件這里只寫半個(gè) {loop}
  1. <!--{loop $_G['forum_threadlist'] $key $thread}-->
復(fù)制代碼
然后把 cell 命名為 {cell xxxx/loop_start},這樣在之前寫loop循環(huán)的地方直接寫  {cell xxxx/loop_start} 就可以了
再比如,有一段模板細(xì)節(jié)要重復(fù)寫很多次,你可以把這一段封裝成 {cell xxxx/lastposter}
  1. <!--{if $thread['lastposter']}--><a href="{if $thread[digest] != -2}home.php?mod=space&username=$thread[lastposterenc]{else}forum.php?mod=viewthread&tid=$thread[tid]&page={echo max(1, $thread[pages]);}{/if}" c="1">$thread[lastposter]</a><!--{else}-->$_G[setting][anonymoustext]<!--{/if}-->
復(fù)制代碼


然后再說(shuō) {cells},{cells} 是 {cell} 的集合,你可以把寫了一堆 {cell} 的一段代碼再次封裝成一個(gè)文件,放到 /template/xxx/cells/ 目錄下,同樣命名為 {cells file} 格式

比如:{cells forum/portal/navlist} 會(huì)調(diào)用 /template/xxxx/cells/default/forum/portal/navlist.htm
  1. <ul class="ttp cl">
  2. {cell forum/portal/navlist/loop_start}
  3. <li{cell forum/portal/navlist/current_class}><a href="{cell forum/portal/navlist/url}" ajaxtarget="threadlist">{cell forum/portal/navlist/name}</a></li>
  4. {cell forum/portal/navlist/loop_end}
  5. </ul>
復(fù)制代碼


更進(jìn)一步的,如果 cells 的文件是 php 文件,這樣這段 cells 的模板就支持站長(zhǎng)在后臺(tái)直接修改了。


在這個(gè) php 中你需要寫一個(gè) class,class 名稱和路徑一致,定義好 “$name” 名稱、 “$usage” 用法、“$cellList”所有cell列表、“$requireList”必填cell列表,然后定義一個(gè) getDefault() 方法返回默認(rèn)模板。后臺(tái)模板列表的細(xì)胞模板列表中就可以直接提供給用戶編輯這段模板了


下面~你自己試試吧!


從此,重復(fù)寫的一些內(nèi)容,你不用管代碼了,完全黑盒子一樣調(diào)用cell就行


比如開(kāi)發(fā)模板時(shí)模板頭部的一堆重復(fù)內(nèi)容不用再?gòu)?fù)制過(guò)來(lái)了,直接引用下面3個(gè)cells:

{cells common/header/meta}
{cells common/header/css}
{cells common/header/js}

就夠了,這樣官方如果有改動(dòng),第三方模板自然就變了


還有就是第三方登錄的:


{cells account/icons account/icons}

所有做登錄的地方引用下就可以了。不用在乎官方自己是怎么寫的,只需要引用這段細(xì)胞模板代碼

41

主題

3218

回帖

5476

積分

應(yīng)用開(kāi)發(fā)者

Discuz! 運(yùn)維

貢獻(xiàn)
215 點(diǎn)
金幣
685 個(gè)
QQ
沙發(fā)
發(fā)表于 2024-11-11 10:47:28 來(lái)自手機(jī) | 只看Ta
沙發(fā)位已占

5

主題

80

回帖

97

積分

應(yīng)用開(kāi)發(fā)者

貢獻(xiàn)
0 點(diǎn)
金幣
5 個(gè)
板凳
發(fā)表于 2024-11-11 19:27:00 | 只看Ta
二樓也不錯(cuò)

1

主題

7

回帖

13

積分

初學(xué)乍練

貢獻(xiàn)
0 點(diǎn)
金幣
5 個(gè)
地板
發(fā)表于 2025-9-2 09:16:31 | 只看Ta
時(shí)隔一年才有三樓。

本版積分規(guī)則

  • 關(guān)注公眾號(hào)
  • 有償服務(wù)微信
  • 有償服務(wù)QQ

手機(jī)版|小黑屋|Discuz! 官方交流社區(qū) ( 皖I(lǐng)CP備16010102號(hào) |皖公網(wǎng)安備34010302002376號(hào) )|網(wǎng)站地圖|star

GMT+8, 2025-10-16 04:19 , Processed in 0.062385 second(s), 12 queries , Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

關(guān)燈 在本版發(fā)帖
有償服務(wù)QQ
有償服務(wù)微信
返回頂部
快速回復(fù) 返回頂部 返回列表