欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

smarty 模板路径问题

程序员文章站 2022-06-07 21:24:27
...
请教个问题,使用smarty的时候我的模板页的css和图片链接路径都不对,百度说引入的路径是相对于php文件的,但是我引入的应该没错吧


请大家帮下忙

回复讨论(解决方案)

1.最好加上网站的域名 如 www.yourweb.com/css/xxx.css
在smarty父类模板中注册url。全局加上
2.自己调试吧。不行就加 /../../css/xxx.css 试试 楼主何不自己多试几次。又不是啥困难问题

1.最好加上网站的域名 如 www.yourweb.com/css/xxx.css
在smarty父类模板中注册url。全局加上
2.自己调试吧。不行就加 /../../css/xxx.css 试试 楼主何不自己多试几次。又不是啥困难问题 现在是这个情况,直接打开html页面就是正确的,但是通过php去掉用模板,css就不管用

那就试试相对模板的路径呗?

输出后的路径 也就是相对php的

在 smarty 应用中,所有的 url 相对路径都是相对于实例化 smarty 对象的程序的 $_SERVER['PHP_SELF'] 的
对于图片、样式表、外联的js等最好都使用 url 绝对路径

在 smarty 应用中,所有的 url 相对路径都是相对于实例化 smarty 对象的程序的 $_SERVER['PHP_SELF'] 的
对于图片、样式表、外联的js等最好都使用 url 绝对路径

我在页面里明明写的是
但是到真正页面出来后却是


这是为什么啊,刚接触这个,太容易了勿怪。。。。还有我点击真正的页面css时候连接的地址竟然是http://cast.com/admin/product/styles/general.css 也就是他到了product的文件夹里了

写绝对的路径吧。不可以吗

写绝对的路径吧。不可以吗 写绝对的。。。也不对。。例如应该是ca.com/styles/mian.css 最终解析出来的是ca.com/product/styles/mian.css

我在页面里明明写的是
但是到真正页面出来后却是



这个可能是浏览器解析问题 因为这两个地址是一样的 你仔细想想: 当前文件的父目录下的style文件夹 不就是 当前目录的同级别style文件夹 吗?

关于smarty路径不对的 你看一看你是在哪里new smarty的 以那个文件为基础进行相对路径的书写.

更好的办法是: 写基于服务器的绝对路径(而非基于网站的).


总之: 好好看看5#版大写的两行字,真心是PHP知识+多年经验的下总结出来的答案和好建议