• 网站认证
  • 教程:5,156|
  • 话题:4269|
  • 评论:45|
  • 会员:177|
  • 注册
  • 查看作者
  • DedeCMS移动端URL优化str_replace函数替换多个内容

    用一个DedeCMS搭建PC端和移动端方法比较多,所用标签相同,会遇到链接路径出错,比如首页链接、面包屑导航、上下页链接等。xiuz采用不动源文件,运用PHP的str_replace函数替换URL的方法,采用绝对路径兼容PC、移动端。

    设置并启用绝对地址

    系统基本设置 -> 核心设置,找到

    (是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址:选择是

    建议开启绝对路径,这样在PC端的栏目连接、文章链接、图片地址都是绝对路径。在移动端所有URL路径就可以用str_replace函数进行替换。

    相对路径:页面出现的链接没有完整的URL,如

    <a href=https://www.niuqi.net/"/seo/">SEO优化入门</a>

    绝对路径:页面出现的链接是完成的URL,如

    <a href=https://www.niuqi.net/"https:/www.niuqi.net/seo/">SEO优化入门</a>

    两种路径访问的页面是一样的,但绝对路径有效集中页面权重,更利于SEO优化。

    在没有做301之前,用下面的URL都可以访问首页。这么多页面100%相同,页面如果采用相对路径,蜘蛛会沿着URL反复抓取,权重会分散。采用绝对路径后,蜘蛛即使从不同的URL进入,也只沿着一种URL路径抓取内容。

    WAP移动端搭建

    如果WAP移动端在PC端的子目录下,即首页路径分别是:

    PC端首页URL为: WAP端首页URL为:

    ①搭建移动端方法,参考文章《DedeCMS一个后台管理PC和移动端纯静态非官方版》;

    ②采用二级域名解析到二级目录的方法,虚拟主机一般不支持绑定,但是可以通过技术手段完成,可以参考<<虚拟主机完成织梦手机站绑定二级域名>>,以实现WAP端首页URL为

    在WAP模板中运用str_replace函数替换单个或多个内容

    ①面包屑导航(当前所在位置)

    面包屑导航告诉用户所在位置,搜索引擎也沿着这些路径继续抓取。调用标签是{dede:field.position/},采用绝对路径之后,

    PC端面包导航HTML一般是:

    <strong>当前位置:</strong><a href=https://www.niuqi.net/"https:/www.niuqi.net">首页</a> > <a href=https://www.niuqi.net/"https:/www.niuqi.net/seo/">SEO优化入门</a>

    移动端面包屑导航HTML一般是:

    <strong>当前位置:</strong><a href=https://www.niuqi.net/"https:/www.niuqi.net">首页</a> > <a href=https://www.niuqi.net/"https:/www.niuqi.net/wap/seo/">SEO优化入门</a>

    {dede:field.positon/}必须要替换两个地方:首页URL地址、栏目URL地址。

    PHP str_replace函数把两处替换的地方放到array数组里面,该函数执行顺序的问题不展开阐述,移动端模板的面包屑导航(注意下面橙色部分的写法):

    {dede:field name="position" function="str_replace(array('','niuqi.net/wap'),'',@me)"/}

    最后HTML效果

    <strong>当前位置:</strong><a href=https://www.niuqi.net/"https:/www.niuqi.net">首页</a> > <a href=https://www.niuqi.net/"https:/www.niuqi.net/seo/">SEO优化入门</a> >

    ②栏目页栏目和文章链接修改

    <a href=https://www.niuqi.net/"{dede:field.typeurl function='str_replace("","",@me)'/}"> 栏目:{dede:field.typename/} </a> {dede:list pagesize='10'} <a href=https://www.niuqi.net/"[field:arcurl function='str_replace("","",@me)'/]"> 标题:[field:title/] </a> {/dede:list}

     

  • 0
  • 0
  • 0
  • 42
  • 请登录之后再进行评论

    登录
  • 做任务
  • 实时动态
  • 偏好设置
  • 自定义-1
  • 单栏布局 侧栏位置: