ecshop的smarty库还原成smarty原生库方法
寫過ecshop模板的人都曉得,他們是用所謂的dwt的文件來嵌套lbi文件進(jìn)行模板的彼此調(diào)用。在咱們調(diào)取數(shù)據(jù)的時(shí)分,ecshop的默許模板只提供給咱們幾個(gè)簡略的句子進(jìn)行調(diào)用,那么有沒有辦法能夠把這個(gè)精簡的cls_template類添加其他的句子呢?
?
首要斷定版別:ECShop v2.7.3
通過近一天對(duì)ecshop程序的研討,發(fā)現(xiàn)這個(gè)所謂的cls_template類,其實(shí)是一個(gè)精簡版的smarty,而且值得幸虧的是,這個(gè)cls_template類沒有包括其他的文件。那么咱們完全能夠?qū)⒐俜絪marty直接拿來用。斷定了這一點(diǎn),剩余的就是看ECShop在哪里運(yùn)用這個(gè)cls_template類了。
翻開index.php,咱們發(fā)現(xiàn)他里邊有這樣一句話:
所以咱們找到這個(gè)文件,找到創(chuàng)立的那個(gè)cls_template類,代碼如下:
這里發(fā)現(xiàn)他們創(chuàng)立了一個(gè)smarty的一個(gè)目標(biāo),其實(shí)咱們寫的模板中一切能用的標(biāo)簽都是用這個(gè)的。
我這里不說廢話了,直接給辦法了。
仿制一份init.php 為 init_x.php ,在根目錄的 index.php 中,將:
改為:
即可。原因是還有其他地方運(yùn)用了init.php,直接修正的話,會(huì)形成不行預(yù)知的成果。
如今去官方下載一個(gè)smarty模板,這里用的是2.6的版別(3.1的版別試過,有錯(cuò)。估量ecshop其時(shí)用的是2.6兼容的,別問我為啥。),放在include的文件夾里,而且在init_x.php中包括當(dāng)時(shí)的原生smarty類而且用Smarty類交換之前的cls_template類,代碼如下:
這里注重途徑和類名的修正。還有就是細(xì)心查看smarty類需求的那幾個(gè)變量和路近能否都存在。
持續(xù)往下查看:
看這一段,查看smarty類里能否存在這幾個(gè)變量,沒有就刪掉。
斷定無誤后,能夠回到根目錄的index.php文件上了。
之前,咱們將init.php 換成了init_x.php,這僅僅第一步。下面咱們要持續(xù)修正模板,將一切的dwt文件換成tpl文件(回憶中是兩處)。
如今進(jìn)入themes文件夾,將index.dwt文件修正為index.tpl文件。
如今咱們來翻開debug,看看能不能進(jìn)行smarty調(diào)試,并運(yùn)用其他的smarty標(biāo)簽了。(這里闡明一下,smarty文件夾需求有可運(yùn)轉(zhuǎn)的權(quán)限。)
還記住剛剛你屏蔽的那兩行smarty不存在的變量么?那個(gè)是調(diào)試。咱們細(xì)心對(duì)照發(fā)現(xiàn),2.6的smarty調(diào)試的變量名稱為debuging。
咱們將方才:
中的direct_output,修正為debuging,而且改為true就能夠彈出smarty官方的調(diào)試窗口了
轉(zhuǎn)載于:https://www.cnblogs.com/AloneSword/p/3513641.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的ecshop的smarty库还原成smarty原生库方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 振作
- 下一篇: Activity与Intent