本文约 2,406 字,预计阅读 7 分钟。文中命令与配置均经过实测,可直接参考执行。
引言:做完一轮优化,三个月后回到原点
大多数站点的 SEO 是这样衰减的:上线时认真做了一轮优化,收录和排名慢慢起来;之后忙于写内容和维护,没人再管技术侧;半年后发现 sitemap 报错两个月了、缓存插件把 robots.txt 缓存成旧版、一堆页面因为插件更新变成 404。这些都不是大问题,但没人定期检查就会积累成真问题。解决办法不是更努力,而是把检查变成固定动作。
原理分析:为什么需要清单而不是靠记忆
| 问题类型 | 发现难度 | 不处理的后果 | 适合检查频率 |
|---|---|---|---|
| sitemap 报错 | 低(主动看才知道) | 新内容发现变慢 | 每周 |
| 死链增多 | 中 | 抓取预算浪费 | 每月 |
| 抓取频次下降 | 中 | 全站收录变慢 | 每月 |
| 核心插件更新引入问题 | 高 | 页面结构变化 | 每周 |
| 重复标题积累 | 中 | 内耗竞争 | 每季度 |
| 数据库膨胀 | 低 | 生成变慢、TTFB 升高 | 每月 |
| 评论区垃圾堆积 | 低 | 页面质量下降 | 每周 |
清单的价值在于把”需要记得去做”变成”到了时间就做”,并且留下记录可追溯。真正执行时,能自动化的部分尽量交给 cron,人只做判断类工作。
保姆级实操
每周五项
- 看一次百度搜索资源平台的抓取情况与收录量变化,异常下降立刻排查。
- 检查 sitemap 是否可访问且格式正确。
- 处理评论与审核队列,清掉垃圾评论。
- 把本周新发布和更新的 URL 推送到百度。
- 抽查 5 个页面的移动端渲染是否正常。
每月八项
- 死链扫描并提交死链文件。
- 数据库与修订版本清理。
- 检查 robots.txt 实际输出。
- 导出「流量与关键词」数据做存档与对比。
- 检查主题与插件更新,更新后在测试环境验证再上生产。
- 检查核心页面的结构化数据是否仍有效。
- 清理未使用的媒体文件与过期瞬态数据。
- 备份一次全站(文件 + 数据库),并验证备份可恢复(方案见 WordPress 备份方案)。
每季度三项
- 重跑内容垂直度与层级深度统计。
- 排查重复标题与重复内容。
- 复盘关键词覆盖缺口,调整下一季度选题。
可自动化的部分交给 cron:
# /etc/cron.d/wp-seo-weekly
SHELL=/bin/bash
PATH=/usr/local/bin:/usr/bin:/bin
WEBROOT=/var/www/mimangfei
# 每周一 03:10 清理过期瞬态与修订版本
10 3 * * 1 deploy cd $WEBROOT && wp transient delete --expired && \
wp post delete $(wp post list --post_type='revision' --format=ids) --force --quiet
# 每周一 03:30 触发到期的计划任务(WP-Cron 依赖访问触发,容易漏跑)
30 3 * * 1 deploy cd $WEBROOT && wp cron event run --due-now --quiet
# 每周一 03:40 检查 sitemap 与 robots 的返回码,异常写入日志
40 3 * * 1 deploy cd $WEBROOT && \
for p in /wp-sitemap.xml /robots.txt; do
code=$(curl -s -o /dev/null -w '%%{http_code}' "https://mimangfei.com$p")
echo "$(date +%%F) $p $code" >> /var/log/wp-seo-check.log
done
# 每月 1 号 04:00 优化数据表并导出备份
0 4 1 * * deploy cd $WEBROOT && wp db optimize --quiet && \
wp db export /backup/mimangfei-$(date +%%Y%%m).sql --quiet
注意 cron 里的 % 需要转义为 \%(上面示例已写成 %%,实际写入 crontab 时使用单个 \%),否则命令会被截断。
执行落地建议: 把上面清单做成一个 Markdown 表格放在团队文档里,每完成一项打勾并记录日期与结论。判断类工作(比如”这个月抓取频次下降要不要处理”)需要人做,检查类工作全部交给脚本。
常见踩坑
- WP-Cron 依赖用户访问触发,低流量站点定时任务长期不执行,必须配系统 cron。
wp cron event run --due-now在插件任务卡死时会拖慢执行,需加超时控制。- 自动清理修订版本时不限制数量,一次删除几万条导致数据库锁表。
- 备份只导出数据库不备份上传目录,恢复时发现图片全丢。
- 备份从不验证可恢复性,真出事才发现备份文件损坏。
- 案例: 某站长期依赖 WP-Cron,因流量低导致 sitemap 更新任务实际几个月没跑过,新文章一直没进入 sitemap。改为系统 cron 后当天就补上了,两周内新内容收录速度明显加快。这类问题在后台看不到任何报错。
- 死链扫描只跑一次就提交,没排除临时故障导致的误报。
- 每月清单列了二十项,实际上没人能坚持执行超过两个月,清单越长越难落地。
总结
清单要短、要能坚持:每周五项、每月八项、每季度三项,加上四条 cron 任务,基本覆盖了技术侧的高频问题。判断一份清单合不合格,就看它有没有被执行满三个月——没执行满的说明列得太长。所有检查项都要留下记录,复盘时才有的可对比,记录方法见 百度 SEO 数据复盘模板。
