Dede CMS 截取文章正文指定的字数

使用dede CMS制作文章页面时,有时需要截取文章正文的一部分来显示,究竟怎么做呢?在网上搜索了一通也没找到答案,就自己摸索实验了一下。

dede:field.body 是dede cms的文章正文标签,官方帮助文档中没有介绍这个标签有什么属性和参数,但是,对于标签可以使用 function 进行扩展,function所使用的函数可以是系统函数,也可以是自定义的函数。所以我们可以使用function调用函数对字符串做截断操作以达到我们的目的。

{dede:field.body function=' substr(@me,0,810)'/}

substr是PHP的系统函数,作用是取部份字符串。

语法: string substr(string string, int start, int [length]);

返回值: 字符串

将字符串 string 的第 start 位起的字符串取出 length 个字符。若 start 为负数,则从字符串尾端算起。若可省略的参数 length 存在,但为负数,则表示取到倒数第 length 个字符。

例如:
echo substr("abcdef", 1, 3); // 返回 "bcd"
echo substr("abcdef", -2); // 返回 "ef"
echo substr("abcdef", -3, 1); // 返回 "d"
echo substr("abcdef", 1, -1); // 返回 "bcde"
?>

截断功能经我验证完全有效,dede版本5.5。你也来试试看吧。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>