首页 > 使用教程 > 正文

模板标签中include文件时/相对引用的说明特别篇

  • 更新时间:2024-09-20 09:48:16
  • 1866阅读
  • 1评论

小伙伴们在开发模板或者插件的时候,经常会用到include标签。

系统在这个标签上设计的有所欠缺,这里小编为大家对比下include标签在模板和插件中使用的区别。

知识点!知识点!知识点,快拿小本本记住了哈。


1、在index应用

    index应用是系统前台应用,用户看到的页面就是这个应用渲染的

    在index应用中include标签不支持“/header”这种方式的相对引用,模板文件的位置是相对于选择的模板所在的文件夹,这句话可能有点绕,举个例子:

    当前系统选择模板为defaults,在index.php模板文件中用到了{include:header},那么引用的这个header文件路径应该是

  网站根目录/templates/index/defaults/header.php  

    

    如果是{include:temp/cms}这种方式的,那么引用的cms文件的路径应该是

  网站根目录/templates/index/defaults/temp/header.php  


至于有没有使用“/temp/cms”这种方式引用,不影响模板的渲染,因为index应用的模板在渲染的时候会自动在模板文件夹中索引。


2、在非index应用中

什么是非index应用呢?rpcms默认包含有三个应用:admin、index、install。

非index应用就是除了index这个以外的其他应用(rpcms支持应用的扩展开发)。

在其他应用中,include标签是支持“/”相对引用的。

用法一:

{include:header}

    表示在当前控制器对应的模板文件夹中引用header.php文件。

    如:当前打开的链接为:http://xxx.com/mod1/controller/index.html

    那么这个header.php的文件路径应该是

  网站根目录/templates/mod1/controller/header.php 


用法二:

{include:/header}

表示在当前应用对应的模板文件夹中引用header.php文件。

如:当前打开的链接为:http://xxx.com/mod2/controller/index.html

    那么这个header.php的文件路径应该是

  网站根目录/templates/mod2/header.php 


3、在插件中

在插件模板中使用include标签时,“/”相对引用和在应用中使用就不一样了。


用法一:

{include:header}

{include:temp/header2}

表示当前插件文件夹中的header.php文件。

如:当前打开的链接为:http://xxx.com/plugin/demo/index

    那么这个header.php的文件路径应该是

  网站根目录/plugin/demo/header.php 

    这个header2.php的文件路径应该是

  网站根目录/plugin/demo/temp/header.php 


用法二:

{include:/header}

表示当前应用文件夹中的header.php文件。


如:当前插件是在后台打开的,比如插件的配置。那么这个header.php的文件路径应该是

  网站根目录/templates/admin/header.php 


如:当前插件是在前端打开的,系统选择的模板为defaults。那么这个header.php的文件路径应该是

  网站根目录/templates/index/defaults/header.php 



小伙伴们明白了吗?

发表评论

评论已关闭,请移步论坛发表,立即前往

1 位网友评论:

白起A头像

白起A 2020-11-03 16:25:53

理解起来好复杂啊

Top