2009-05-18 103 views
2

我有一個Smarty的小問題...我有兩個不同的模板文件在兩個不同的目錄中碰巧具有相同的名稱。不幸的是,Smarty讓他們感到困惑。它使用最後一個更新來在/ templates_c文件夾中創建編譯文件,然後用它來顯示頁面。具有相同名稱和Smarty的模板

這意味着這兩個文件最終看起來像最後一個被更新,甚至認爲它們完全不同。

我可以通過重命名其中一個文件來解決這個問題,或者大概是調用clear_compiled_tpl。不過,我想知道是否有更好的方法。是否有辦法將Smarty配置爲在創建其編譯文件時注意模板文件所在的文件夾?

編輯:我使用Smarty的v2.6.19

+1

你在用什麼版本的smarty? – karim79 2009-05-18 11:58:00

回答

3

輸出你的模板之前,試試這個,它實際上是與成千上萬的模板文件目錄的優化,但可能解決您的問題:

$smarty->use_sub_dirs = true; 
+0

這似乎工作,謝謝 – 2009-05-18 14:38:05

0

如果這些文件位於相同的template_dir但是不同的文件夾中,Smarty應該使不同的編譯文件正常工作。如果您使用多個template_dir且只有一個compile_dir,請確保爲每個模板文件夾設置一個唯一的$ smarty-> compile_id。