因为接触帝国CMS不久,近期对网站的修改也比较堵,所以近期会有很多帝国CMS方面的问题对我来说都是新问题,每一次想办法解决的问题我都会第一时间分享到品自行博客。今天看到网站相关文章列表,标题过长的情况下会自动截断,这样看起来特别不友好,所以今天就解决这个问题,根据需要修改的文章的模型来修改对应的内容模板:
到后台模板管理>内容模板>管理内容模板,修改对应的内容模板,我这里修改的是新闻内容模板,点“编辑”即可进行修改,
因为我要修改的是相关文章下面的文章列表,所以我找到这段代码:
<li><a href='<?=$row[titleurl]?>' target=" _blank">
<span><?=date("Y-m-d",$row[newstime])?></span>
<?=esub($row['title'],32)?></a>
</li><?}}else{$sql = $empire->query("SELECT title,titleurl,newstime FROM {$dbtbpre}ecms_download WHERE isgood>0 ORDER BY id DESC limit 10");
上述代码很多,我们只要搞清楚控制文章列表标题字数的那段代码就ok了,上述红色字体的代码
<?=esub($row['title'],32)?>
就是代表标题文字,后面的32代表截取的字符数,之所以文章标题没有完全显示就是这个数字在控制,简单说一下,32代表截取文章标题前32个字符,一个汉字是两个字符,所以如果文章标题全部都是汉字,那最多也就显示标题前面16个汉字,后面多的汉字不予显示,数字、字符算一个字符。
帝国CMS esub()截取字段函数的用法
语法:esub(字符串,截取字数,后缀)
说明:后缀为截取字符后附带内容,此参数可以省略。
帝国CMS默认的截取32个字符,所以明白了这一点就好办了,我们只需要修改这个数字,我这里直接改到50了,这个根据自己网站需要进行更改,其他不要改。
<?=esub($row['title'],50)?>
如果标题后面加省略号那又怎么修改呢?
按照下面代码进行更改即可:
<?=esub($row['title'],32,'...')?>
评论