【UCHome二次開發(fā)】模板修改
來源:
發(fā)布時間:2010/4/24
瀏覽次數(shù):753
前一陣在做UCHome的一些修改以滿足具體的應(yīng)用,來做一點總結(jié)。涉及的修改都是些小功能或是界面的調(diào)整,所以主要涉及的是對于模板的修改,以下歸納一下過程和經(jīng)驗。
1、模板文件定位
確定要修改的模板文件這是第一步。
方法一:URL分析法。查看/config.php,$_SC['template']參數(shù)指示的是當(dāng)前使用的模板文件夾。關(guān)于通過URL參數(shù)定位模板文件名的方法請參考《【UCHome二次開發(fā)】主要文件說明》。
方法二:模板緩存查看法。首先在瀏覽器中打開想要確定模板的頁面,然后把模板緩存文件夾/data/tpl_cache/中的.php模板緩存文件全刪掉,刷性瀏覽器,再次查看模板緩存文件夾便可看到新生產(chǎn)的頁面模板緩存文件。根據(jù)模板緩存文件的命名規(guī)則“template_模板文件夾名_模板文件名.php”,可分析知模板文件名,從而定位到模板文件。至于此方法的緣由請參考《【UCHome二次開發(fā)】模板解析》。
方法三:查表法。確定頁面的功能,通過查閱《【UCHome二次開發(fā)】模板頁面說明》來確定頁面對應(yīng)的模板文件。
2、模板文件生效
特別強調(diào),模板文件修改后,需要將模板緩存文件夾/data/tpl_cache/中對應(yīng)的.php模板緩存文件刪除后,才能生效;否則頁面生成仍將使用先前緩存的模板文件,而無法看到修改后的結(jié)果。
這里提供一種方法,可以使修改模板文件后,不用手動刪除緩存的模板文件就能直接看到修改結(jié)果。方法為修改/source/function_common.php中的代碼
1 |
if (! file_exists ( $objfile )) { |
改為
1 |
if (! file_exists ( $objfile )|| filemtime ( $objfile )< filemtime (S_ROOT. './' . $tpl . '.htm' )) { |
即可。
因為此方法增加了一次對文件系統(tǒng)的訪問,一定程度上會影響性能,所以此處的修改只建議運用在調(diào)試服務(wù)器上。
3、模板文件修改
在不是很確定修改內(nèi)容的前提下,建議通過修改緩存的模板文件來調(diào)試。因為模板緩存文件是php代碼,對我們來說比較熟悉,調(diào)試起來相對方便,比如不知道某個變量的值,可以直接用print_r或var_dump打印出來查看。
通過對模板緩存文件的調(diào)試我們可以較快地定位我們要修改的地方,后面的修改就是根據(jù)UCHome模板語法對模板文件進(jìn)行修改和測試了。相關(guān)的模板語法可參考《【UCHome二次開發(fā)】模板語法說明》