php smarty是不是可以调用上级或同级目录的模板
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php smarty是不是可以调用上级或同级目录的模板相关的知识,希望对你有一定的参考价值。
是否可以这样设置 $smarty->templates_dir = "../templates"; $smarty->compile_dir = "../templates_c"; $smarty->cache_dir = "../cache"; 也就是说 这几个目录都和上级目录中的 然后我把模板放到 上级目录的 templates smarty会找不到? 请问高手哪里的问题?
参考技术A 这个上级目录指的应该是你的php文件的上级目录
调用的时候直接
$smarty->display('xxx.tpl');
今天才开始看smarty,呵呵
这个问题我也试过很多次了。
我的结论是设置$smarty->templates_dir
=
"../templates";时是相对于你的php文件来说的
实现$smarty->display('xxx.tpl');里的模板路径是相对于你的模板目录说的
————————————————
建议你自己写个子类继承Smarty类,里面写绝对路径。
当位于顶级栏目显示下级栏目,当位于二级栏目显示同级栏目,当位于三级目录,显示上级栏目
$row2 = $dsql->GetOne("SELECT * FROM `#@__arctype` WHERE id=‘$typeid‘ "); $typeid = $row2[‘id‘]; $reid = $row2[‘reid‘]; $topid = $row2[‘topid‘]; $issetInfos = true; } if($type==‘‘ || $type==‘sun‘) $type=‘son‘; if($type==‘reid‘ && $topid == ‘0‘ ) $type=‘son‘; if($innertext==‘‘) $innertext = GetSysTemplets("channel_list.htm");
include aglibchannel.lib.php
{dede:channel type=‘reid‘ noself=‘yes‘ currentstyle=‘ <li class="thisclass"><a href="~typelink~">~typename~</a></li> ‘} <li><a href="[field:typeurl/]">[field:typename/]</a></li>{/dede:channel}
以上是关于php smarty是不是可以调用上级或同级目录的模板的主要内容,如果未能解决你的问题,请参考以下文章
php页面中的包含文件用相对路径(require_once("./smarty/smarty.class.php"))出错了怎么解决