• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    织梦DEDECMS移动端适配URL优化str_replace函数替换多个内容
    POST TIME:2021-05-23 02:22
    用一个DedeCMS搭建PC端和移动端方法比较多,所用标签相同,会遇到链接路径出错,比如首页链接、面包屑导航、上下页链接等。采用不动源文件,运用PHP的str_replace函数替换URL的方法,采用绝对路径兼容PC、移动端。
     
    DedeCMS移动端URL绝对路径修改
    设置并启用绝对地址
    系统基本设置 -> 核心设置,找到
    (是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址:选择是
    建议开启绝对路径,这样在PC端的栏目连接、文章链接、图片地址都是绝对路径。在移动端所有URL路径就可以用str_replace函数进行替换。
    相对路径:页面出现的链接没有完整的URL,如
    <a href="/seo/">SEO优化入门</a>
    绝对路径:页面出现的链接是完成的URL,如
    <a href="http://www.dede58.com/seo/">SEO优化入门</a>
    两种路径访问的页面是一样的,但绝对路径有效集中页面权重,更利于SEO优化。
    在没有做301之前,用下面的URL都可以访问首页。这么多页面100%相同,页面如果采用相对路径,蜘蛛会沿着URL反复抓取,权重会分散。采用绝对路径后,蜘蛛即使从不同的URL进入,也只沿着一种URL路径抓取内容。
    http://www.dede58.com/
    http://dede58.com/
    http://www.dede58.com/index.html
    http://www.dede58.com/index.php
    http://dede58.com/index.html
    http://dede58.com/index.php
    织梦移动端搭建
    如果织梦移动端在PC端的子目录下,即首页路径分别是:
    PC端首页URL为:http://www.dede58.com/
    移动端首页URL为:http://www.dede58.com/m/
    ②采用二级域名解析到二级目录的方法,参考文章《万网阿里云用.htaccess二级域名绑定子目录》,以实现移动端首页URL为
    http://m.dede58.com/
     
    在m模板中运用str_replace函数替换单个或多个内容
    ①面包屑导航(当前所在位置)
    面包屑导航告诉用户所在位置,搜索引擎也沿着这些路径继续抓取。调用标签是{dede:field.position/},采用绝对路径之后,
    PC端面包导航HTML一般是:
    <strong>当前位置:</strong><a href="http://www.dede58.com">首页</a> > <a href="http://www.dede58.com/seo/">SEO优化入门</a>
    移动端面包屑导航HTML一般是:
    <strong>当前位置:</strong><a href="http://www.dede58.com">首页</a> > <a href="http://www.dede58.com/m/seo/">SEO优化入门</a>
    {dede:field.positon/}必须要替换两个地方:首页URL地址、栏目URL地址。
    PHP str_replace函数把两处替换的地方放到array数组里面,该函数执行顺序的问题不展开阐述,移动端模板的面包屑导航(注意下面橙色部分的写法):
    {dede:field name="position" function="str_replace(array('http://www.dede58.com','http://m.dede58.com/m'),'http://m.dede58.com',@me)"/}
    最后HTML效果
    <strong>当前位置:</strong><a href="http://m.dede58.com">首页</a> > <a href="http://m.dede58.com/seo/">SEO优化入门</a> >
    ②栏目页栏目和文章链接修改
    <a href="{dede:field.typeurl function='str_replace("http://www.dede58.com","http://m.dede58.com",@me)'/}">
    栏目:{dede:field.typename/}
    </a>
    {dede:list pagesize='10'}
    <a href="[field:arcurl function='str_replace("http://www.dede58.com","http://m.dede58.com",@me)'/]">
    标题:[field:title/]
    </a>
    {/dede:list}
    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!