有时候我们在使用dedecms的时候需要修改文章标题长度,这里简单整理下,方便需要的朋友
方法一,在artlist标签中直接加入 titlelen=要显示的长度即可
方法二,利用css控制显示自动隐藏超出部份
一般的文字截断(适用于内联与块):
代码如下:
.text-overflow {display:block;/*内联对象需加*/
width:31em;word-break:keep-all;/* 不换行 */
white-space:nowrap;/* 不换行 */
overflow:hidden;
/* 内容超出宽度时隐藏超出部分的内容 */
text-overflow:ellipsis;
/* 当对象内文本溢出时显示省略标记(...) ;需与overflow:hidden;一起使用。
*/}
表格文字溢出的定义:
代码如下:
table{
width:30em;
table-layout:fixed;/* 只有定义了表格的布局算法为fixed,下面td的定义才能起作用。 */
}
td{
width:100%;
word-break:keep-all;/* 不换行 */
white-space:nowrap;/* 不换行 */
overflow:hidden;/* 内容超出宽度时隐藏超出部分的内容 */
text-overflow:ellipsis;/* 当对象内文本溢出时显示省略标记(...) ;需与overflow:hidden;一起使用。*/
}
三、修改dedecms程序
进入dedecms的后台,在“模板管理”中的“标签源码管理”,找到arclist.lib.php ,点击“编辑”,找到
“$titlelen = AttDef($titlelen,30); ”条语句,把其中的30改为60或者更大的数值即可。当然你也可以在
includetaglib 这个目录中找到arclist.lib.php,然后同样的方法修改好,再传到你的空间。
修改完数据库后,发布文章标题长度应该没问题了,但是如果更改文章后标题又变成80字节了,这是因为
dedeactionarticle_eidt_action.php对标题进行了限制
打开dedeactionarticle_eidt_action.php 找到44行 $title = cn_substr($title,80); 删除此行代码, 或者修改
为
代码如下:
$title = cn_substr($title,200);
还需要在phpmyadmin里执行下面的代码
代码如下:
ALTER TABLE `dede_archives` CHANGE `title` `title` VARCHAR( 200 )
2025国考·省考课程试听报名