WordPress AI 机器人插件进度

2026年7月24日16:48:31 发表评论
微信搜一搜 ts小陈

最近给自己的博客折腾了一个 WordPress AI 机器人插件,能自动写文章、回复评论,还能定时发布。前后调试了将近一周,总算稳定运行了。记录一下开发过程和最终的功能。

WordPress AI 机器人插件进度

开发进度表

v0.1 —— 基础框架(7月13日)

  • 完成插件基本架构,接入 DeepSeek API
  • 实现手动发文功能,支持人物角色设定
  • 文章可设置特色图片、分类和标签

v0.2 —— 定时任务(7月15日)

  • 加入每日定时发文,支持设置篇数和间隔
  • 支持自动评论回复
  • 后台设置面板完成

v0.3 —— Bug 大修复(7月17日 - 7月23日)

这个阶段踩了不少坑,逐一记录:

7月17日:时区问题

  • 发现服务器 UTC 时区导致排班晚 8 小时
  • ✅ 修复:改用 gmt_offset 计算北京时间

7月18日:内容同质化

  • AI 生成的文章千篇一律,都写早餐、骑电动车、修电脑
  • ✅ 修复:加入6种写作角度随机轮换、禁止写重复话题

7月19日:标题失控

  • 标题太长老跑到内容里,或者整个故事都在标题行
  • ✅ 修复:用 --- 分隔符分离标题和正文,超过15字自动截断

7月20日:并发多发

  • 一次性发布大量重复文章(近百篇)
  • ✅ 修复:加入 is_admin() 检查和并发锁

7月21日:自动排班失效

  • 8:00 首篇文章总是发不出来
  • ✅ 修复:改用时间戳队列存储排班,每次请求自动检查

7月22日:Cron 触发问题

  • 宝塔 wp-cron.php 总是触发失败
  • ✅ 修复:改用 wp_loaded + DOING_CRON 检测,最终切换到 ?ai_bot_check=1 专属触发地址

7月23日:功能稳定

  • 全天 4 篇文章自动定时发布成功
  • 排班、发文、队列管理全部正常
  • 后台仪表盘实时显示发布状态

v0.4 —— 完善体验(7月24日)

  • 后台仪表盘添加发布状态卡片
  • 设置页实时显示队列信息
  • 文章底部添加居中排版的 AI 声明区(可自定义文字)
  • 修复 display: flex 被 WordPress 安全过滤的问题
  • 专属触发地址 ?ai_bot_check=1 整合到主插件文件

最终稳定版技术方案

经过多轮调试,最终稳定运行的架构如下:

  • 触发方式:宝塔每10分钟执行 curl -s -u"账号:密码" "https://域名/wp-cron.php?t=$(date +%s)"
  • 检测机制wp_loaded hook + DOING_CRON 常量判断,只有 wp-cron.php 请求才触发
  • 队列存储:WordPress Options API,时间戳数组
  • 并发控制:Transient 锁(120秒超时)
  • 自动排班:每日首次检测到队列为空时自动按设置排班
  • 标题控制--- 分隔符解析 + 超长自动截断(限12字)
  • 内容多样性:6种写作角度随机轮换 + 话题黑名单

最新功能介绍

核心能力

🤖 AI 自动写作

WordPress AI 机器人插件进度

  • 接入 DeepSeek API,支持两种模式:
    • 日常碎片模式:设定人物角色,AI 以第一人称写生活日记
    • 正式文章模式:专业博客风格,适合技术、教程类内容

📅 智能定时发布

  • 每日自动排班,支持设置篇数(1-10篇)
  • 自定义首篇发布时间(默认 8:00)
  • 自定义发布间隔(默认 3 小时)
  • 到点自动发布,无需人工干预

💬 自动评论回复

WordPress AI 机器人插件进度

  • 自动回复用户评论
  • 支持角色口吻回复(与文章风格一致)
  • 可设置回复窗口天数和次数

特色功能

🎯 写作角度轮换 每次生成文章时,从 6 种写作角度中随机选取:

  • 叙事型、吐槽型、感悟型、观察型、分享型、回忆型
  • 避免内容千篇一律

🛡️ 防重复机制

  • 自动跳过已写过的话题(早餐、通勤、修电脑等)
  • 每次只写一件事,不堆砌多个话题
  • 每篇文章和上一篇不一样

📊 实时状态监控

WordPress AI 机器人插件进度

  • 后台首页仪表盘卡片:显示待发布篇数、下次发布时间
  • 设置页队列显示:完整排班列表
  • 日志系统:记录每次发文和排班详情

🔧 多触发方式

  • 宝塔定时任务(推荐):每10分钟访问 wp-cron.php 自动检查队列
  • 手动立即发文:随时生成并发布一篇文章
  • 手动执行每日任务:按设定排班规则批量安排

技术亮点

模块 方案
触发方式 wp-cron.php + DOING_CRON 常量判断,仅 wp-cron.php 请求触发
队列存储 WordPress Options API(wp_ai_bot_publish_queue 时间戳数组)
并发控制 Transient 锁(120秒超时,防止同时多发)
自动排班 每日首次检测到队列为空时自动按设置排班
标题控制 --- 分隔符解析 + 超长自动截断(限12字)
内容多样性 6种写作角度随机轮换 + 话题黑名单 + 单话题模式
CSS 安全过滤 safe_style_css 白名单添加 display,保留 flex 布局

后记

折腾了一周,从最初的简单 API 调用,到最后做成一个稳定的自动写作系统,学到了不少 WordPress 插件开发的知识。

最深的体会:定时任务看似简单,实际坑最多。 时区转换、并发冲突、Cron 触发失败、内容同质化……每个问题都花了不少时间排查。

好在最终跑起来了,现在每天早上 8 点自动发第一篇,11点、14点、17点各一篇,完全不用管。

ts小陈

发表评论(不允许含有网址!)

:?: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :cry: :mrgreen: :neutral: :razz:

😀

已登录用户不需要填写以下内容