96SEO 2025-11-05 02:00 0
在DedeCms内容管理系统的日常运营中,自动生成文章摘要和关键词是提升SEO效率的关键环节。许多管理员在采集内容时经常遇到摘要和关键词字段为空的问题,这直接影响网站的内容质量和搜索引擎表现。本文将系统性地解决这一痛点, 从底层原理到实操方案,带你彻底掌握DedeCms自动摘要与关键词的获取技术。
当使用DedeCms内置采集功能时 如果生成的文章出现摘要和关键词为空的情况,通常源于三个核心问题:

针对这些问题,我们需要从系统配置和代码修改两个维度入手,下面提供具体解决方案。
这是最基础的解决步骤, 通过正确配置采集节点可解决60%的空摘要问题:
注意事项:确保目标网站的列表页包含有效的Meta标签,可通过浏览器开发者工具检查源代码中的meta标签是否存在。
当基础配置无效时需要修改DedeCms的核心采集类文件。
打开文件:/include/dedecollection.class.php这是处理采集逻辑的核心文件。
在文件中搜索以下代码块:
php
//自动分析关键字和摘要
preg_match/isU",$this->tmpHtml,$inarr);
preg_match name=keywords/isU",$this->tmpHtml,$inarr2);
将其替换为增强版正则表达式:
php
//自动分析关键字和摘要
preg_match/isU",$this->tmpHtml,$inarr);
preg_match name=keywords/isU",$this->tmpHtml,$inarr2);
preg_match/isU",$this->tmpHtml,$inarr3);
if && isset) {
$inarr = $inarr2;
}
if && isset) {
$inarr = $inarr3;
}
继续在文件中查找摘要相关代码, 修改为:
php
//自动分析描述
preg_match/isU",$this->tmpHtml,$inarr);
preg_match name=description/isU",$this->tmpHtml,$inarr2);
if && isset) {
$inarr = $inarr2;
}
修改完成后保存文件,重新采集测试。该方案可兼容以下三种Meta标签格式:
对于特殊需求场景, 可采用以下辅助方案:
在采集规则中添加「自动生成HTML」选项,然后在内容列表页使用批量编辑功能:
对于大批量内容处理,可配合以下工具:
当源网站无有效Meta标签时可配置系统自动从正文提取摘要:
代码实现参考:在`/include/helpers/archive.helper.php`中添加自定义截取函数:
php
function autoSummary {
$content = preg_replace);
return mb_substr, 0, $length, 'utf-8').'...';
}
问题1:修改后仍无法获取关键词 解决:检查目标网站的meta标签是否被JavaScript动态加载,可通过浏览器开发者工具的Network标签页查看实际响应内容。
问题2:中文关键词显示乱码 解决:确保文件编码为UTF-8无BOM格式, 在dedecollection.class.php开头添加:
php
header;
问题3:采集时系统提示"正则表达式错误" 解决:检查正则表达式中的斜杠转义,确保所有斜杠正确转义为`/`。
通过以上三种解决方案的组合使用,可彻底解决DedeCms采集时摘要和关键词为空的问题。核心要点在于:正确配置采集节点、优化正则表达式匹配、灵活运用手动干预工具。在实际操作中,建议优先尝试方案一和方案二,对于特殊场景再采用方案三。
因为DedeCms版本的更新,部分解决方案可能需要适配新版本。建议在修改前查阅官方文档,或通过社区论坛获取最新技术支持。记住优质的摘要和关键词不仅是SEO优化的基础,更是提升用户体验的关键要素。
Demand feedback