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

    DedeCMS自动截取标题长度的两种方法
    POST TIME:2018-02-04 22:30

    为了网站的美观,我们又是需要将标题长度限制在某个长度范围之内,对长度超出限定范围的字用省略号代替,这是一个相当不错的想法,具体做法有两种。

    比如调用的字段为test

    方法一:运行php法..

    [field:test runphp=yes]

    @me=substr(@me,截取字节)

    [/field:test]

    方法二:调用内置函数法

    [field:test function='cn_substr(@me,截取字节)'/]

    两种方法其实差不多的.

    第二种方法更适合中文的截取.是dedecms封装好的内置函数

    效果比第一个要好的多..

    一、用CSS控制,这种方法对任何语言架构的系统都适用,因为这个和程序语言无关,而且这样的做法对搜索引擎来说也是非常友好的,所以强烈推荐使用这种方法,具体做法如下:

    这里是控制标题的CSS代码:

    .li {list-style:none;
    width:260px; //这个就是用来控制显示的标题长度
    white-space:nowrap;
    text-overflow:ellipsis;
    -o-text-overflow:ellipsis;
    overflow: hidden;
    }

    例如在DedeCMS里这样调用标题既可实现:

    {dede:arclist row=8 titlelen=126 orderby=pubdate typeid=8}
    <li><a href="[field:filename /]" title="[field:title function=html2text(@me)/]" >[field:title/]</a></li>
    {/dede:arclist}

    二、用PHP程序代码实现标题长度的截取,这种方法对搜索引擎不是很友好,酌情使用,代码如下:

    {dede:arclist row=6 typeid=2 titlelen=50}
    <li><span class="box_r">[field:pubdate function="MyDate('m-d',@me)"/]</span>[[field:typelink/]]<a href="[field:arcurl/]">[field:title function='(strlen("@me")>50 ? cn_substr("@me",50)."…":"@me")'/]</a></li>
    {/dede:arclist}

    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

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

     打开微信

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