织梦二级域名附件相对路径修改绝对路径链接
来源:本站原创|时间:2021-08-05|栏目:dedecms|点击: 次
以在同一个虚拟主机里面用dedecms建立主站和移动站为例子。由于域名的不同,相对路径下会图片、链接、样式等会出错,建议采用绝对路径,dedecms默认有这个设置,但并不完美,笔者分享最简单的修改方法。
一 主域名和移动端域名解析
一般不建议不带www为主站,这个也是方便后面的跳转以及向百度提交URL,后面再分享给大家。
http://www.xiuzhanwang.com为主站
http://m.xiuzhanwang.com为移动站
解析成功之后,实现访问子目录自动跳转到二级域名,还需要再根目录写.htaccess,做子目录的301重定向到二级域名
二 移动端建设
在虚拟主机根目录下建立一个名为m的文件夹,三 根据移动设备自动跳转到移动端JS
也很简单,不管是静态的还是动态的页面
四 二级域名集中权重方法(重点)
1.频道、文章绝对路径链接修改
在未启用绝对路径时,dede标签调出来的链接都是相对路径:
<a href="/channel/">频道名</a>
由于域名不一样,图片、css样式等调用会出问题, 官方采用绝对路径的方法,但是对实现静态页面JS跳转到对应的列表页或内容页的造成影响。这里分享笔者只使用一个str_replace函数的新方法。
dede默认的标签大都支持php函数,使用str_replace函数替换相应的代码:
<a href="[field:typeurl function='str_replace("/m","http://m.xiuzhanwang.com",@me) '/]" target="_blank">[field:typename/]</a>
上面是比较标准的写法,下面的写法在有些时候也是比较实用的:
<a href="http://m.xiuzhanwang.com[field:typecurl function='str_replace("/m","",@me) '/]" target="_blank">[field:typename/]</a>
代码意思是把默认的链接
<a href="/m/channel/" target="_blank">频道名</a>
改写成
<a href="http://m.xiuzhanwang.com/channel/" target="_blank">频道名</a>
2.面包屑导航绝对路径修改
{dede:field name='position' function='str_replace("/m","http://m.xiuzhanwang.com",@me)'/}
这样修改,首页的链接仍然是http://www.xiuzhanwang.com,这里为避免不必要的错误,采取的是相对路径的方法,让首页链接为“/”,打开/include/typelink.class.php,找到
$this->indexUrl = $GLOBALS['cfg_basehost'].$GLOBALS['cfg_indexurl'];
修改为:$this->indexUrl = $GLOBALS['cfg_indexurl'];
即只保留系统设置里的cfg_indexurl的值,默认为“/”,当然你可以根据自己喜欢,写成如:“http://m.xiuzhanwang.com”
3.上下页翻页链接
{dede:prenext get='pre' function='str_replace("/m","http://m.xiuzhanwang.com",@me)'/}</li>
{dede:prenext get='next' function='str_replace("/m","http://m.xiuzhanwang.com",@me)'/}</li>
您可能感兴趣的文章
- 08-05Dedecms文件目录结构解说(能知道织梦每个文件有什么用)
- 08-05织梦DedeCMS获取当前栏目文章数量
- 08-05织梦模板如何添加和调用自定义字段的方法
- 08-05织梦DedeCMS调用显示discuz里面主题的方法
- 08-05限制织梦会员每天投稿数量方法
- 08-05常用的织梦dedecms安全设置集合整理
- 08-05织梦教程:后台编辑器添加中文字体方法
- 08-05织梦修改文章排序到第一位如何解决?
- 08-05dede副栏目调用支持arclist标签
- 08-05织梦教程:手把手教你让dedecms禁止发布重复文章