帮助教程

  • dede织梦栏目列表封面标题连接符/间隔符斜杠和>去除一二三级顺序修改

    最近更新时间:2019-09-26 09:52:36 155

    下面的方法网先生整理发布,确保能讲整站 封面标题隔符号和列表页面标题连接符斜杠/和大于号>处理好

    1、先处理栏目排序,按照 三级栏目_二级栏目_一级栏目-网站名称  顺序排列

    \include\typelink.class.php  大概 182行 

    将 $this->valuePositionName = $tinfos['typename'].$this->SplitSymbol.$this->valuePositionName;

    改 $this->valuePositionName = $this->valuePositionName.$this->SplitSymbol.$tinfos['typename'];

    image.png

    2、栏目列表页面标题连接符 /  处理

    \include\arc.listview.class.php

    $this->Fields['title'] = ereg_replace("[<>]"," / ",$this->TypeLink->GetPositionLink(false));

    上面代码的连接符改下就行了,并且去掉空格

    $this->Fields['title'] = ereg_replace("[<>]","_",$this->TypeLink->GetPositionLink(false));

    image.png

    3、封面页面,比如关于我们 等包含二级子栏目的封面页面标题的连接符依然是用的 系统设置——核心——栏目位置 栏目位置的间隔符号

    这个间隔符请直接修改模板标题代码为,当然下面的代码也可以全站通用,包括列表页面都可以用

    <title>{dede:field.title function='ereg_replace(">","_",@me)'/} - {dede:global.cfg_webname/}</title>

    但是此方法过于约束,当标题使用判断“有SEO标题显示无则显示title”依然会输出系统设置里面的>符号,网先生为此改进。

    \include\typelink.class.php  大概 183行 

    将步骤1里面的栏目顺序代码调整如下

    image.png

    $this->valuePositionName = $this->valuePositionName.'_'.$tinfos['typename'];// 修改栏目间隔符为_,解决title“{dede:field name='array' runphp='yes'} if(@me['seotitle']=='') @me=@me['title'];else @me=@me['seotitle'];{/dede:field}”实现封面列表有seo标题显示但间隔符为>的问题  网先生 @201909260950


    4、最后还要去系统设置——核心——栏目位置 栏目位置的间隔符号,去掉> 2边的空格,不然按照上面的方法处理完还是会在间隔符左右有空格



    以上内容是否对您有帮助?
  • Close