meta标签缺失一般不会影响页面的访问,主要影响的是搜索结果摘要和分享卡片的质量。站点规模扩大之后,逐页人工检查是不现实的,必须有一套可以反复使用的检测和修复流程。

检测之前要先确定好判定规则。主要字段有 title、description、canonical、robots、viewport 以及 Open Graph 系列,多语言网站还需要 hreflang。判断标准不是有没有,而是要看是否为空值、是否重复、长度是否超限。同一模板批量生成的页面经常会出现 description 完全相同的情况,在简单的缺失统计中很容易遗漏。
以sitemap为入口抓取。使用爬虫工具加载全站链接,配合自定义提取规则按照XPath或者正则表达式来获取各个字段的内容,导出成表格之后按照模板进行分组统计。字段缺失率按栏目维度拆分,比全站单一数字更能定位问题源头。搜索引擎站长平台的标题和结构化数据诊断可以作为交叉验证的补充来源。
补全宜从模板层开始。列表页、详情页、标签页分别定义字段生成规则,description 取摘要或者正文第一段,截取到合适的长度,canonical 统一指向规范化地址。CMS 如果支持自定义字段的话,就把值写到字段里,而不是硬编码在模板中,以后编辑的时候不需要修改代码。存量数据用脚本批量回填,先在小范围栏目试跑,比对渲染结果之后再进行全量执行。
验证环节不能省略。补全之后重新抓取同一批URL,比较字段覆盖率和重复率的变化,抽查页面源代码来保证输出顺序和转义是否正确。把检测脚本加入定时任务中,每个月生成一次缺失清单,防止新的栏目上线之后又出现失控的情况。