使用帝国CMS根据内容正文字段[newstext]批量获取描述简介字段[smalltext]的方法,可以通过以下步骤实现:
-
在后台管理界面,选择“内容模型管理”,进入相应的内容模型设置页面。选择需要批量获取描述简介字段的模型,在“字段管理”中找到相应的正文字段[newstext]和描述简介字段[smalltext]。
-
修改正文字段[newstext]的类型为“富文本”,并设置“允许作为摘要使用”的选项。
-
在描述简介字段[smalltext]的设置页面,选择“使用自定义函数”的选项,并在“函数代码”输入框中输入以下代码:
function smalltext($data, $options) {
$content = $data['newstext'];
$pattern='/<img.*?src=[\"|\']?(.*?)[\"|\']?\s.*?>/i';
preg_match_all($pattern,$content,$match);
$desc = strip_tags($content);
$desc=preg_replace("/[\s]+/"," ",$desc);
$desc=trim($desc);
if(preg_match('/^[\x{4e00}-\x{9fa5}A-Za-z0-9]+$/u',$desc)){
$desc=mb_substr($desc,0,$options['maxlen'],'utf-8');
if(count($match[1])>0){
return '<img src="'.$match[1][0].'" title="'.$data['title'].'">'.$desc.' ...';
}
return $desc.' ...';
} else if ($options['default']) {
return $options['default'];
}
return $data['title'];
}
- 在“函数参数”输入框中输入以下代码:
maxlen=50,default=暂无简介
其中,maxlen表示描述简介的最大字符数,default表示如果没有描述简介,则默认使用该文字。
- 点击“保存”按钮,保存设置,即可完成。
对于具体使用的示例:
例如,现有一篇名为“帝国CMS”的文章,其正文内容为“帝国CMS是一款优秀的内容管理系统,其具有丰富的功能和灵活的扩展性。”
-
根据上述步骤,修改正文字段类型为“富文本”,并设置“允许作为摘要使用”的选项。在描述简介字段设置页面中,选择“使用自定义函数”的选项,输入函数代码和参数,保存设置。
-
在前台页面中,显示该文章列表时,会自动根据正文字段[newstext]批量获取描述简介字段[smalltext]的值。在该文章的列表项中,将只显示描述简介字段中的前50个字符,并在末尾加上省略号。
<img src="" title="帝国CMS">帝国CMS是一款优秀的内容管理系统,其具有丰富的功...
通过以上步骤,可以快速方便地批量获取描述简介,并在前台页面中展示。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:帝国CMS根据内容正文字段[newstext]批量获取描述简介字段[smalltext]的方法 - Python技术站