WooCommerce 计划任务清理操作文档(Hostinger 专用)

📘 一、功能原理说明

WooCommerce 使用 Action Scheduler 来管理各种后台定时任务(WP Cron 的队列系统)。
常见任务包括:

  • 库存同步
  • 邮件发送
  • 自动更新价格、订单状态
  • 计划任务日志保存

这些任务保存在数据库中(默认表名):

  • wp_actionscheduler_actions
  • wp_actionscheduler_claims
  • wp_actionscheduler_groups

任务状态字段 status 的常见取值如下:

状态名含义是否可安全删除
complete已执行完成✅ 可删
cancelled已取消✅ 可删
expired已过期未执行✅ 可删
failed执行失败✅ 可删
pending即将执行 / 待执行⚠ 可删(WooCommerce 会重新生成)
running正在执行中❌ 不建议删

⚙️ 二、Hostinger 环境下的清理方式

由于 Hostinger 的共享主机环境对 WP-CLI 命令 支持不完整,action-scheduler list / delete / reset 等子命令不可用。
因此推荐以下三种清理方式。


🧩 方法一:通过 phpMyAdmin 清理(最通用)

  1. 登录 Hostinger → hPanel → 数据库 → phpMyAdmin
  2. 选择你的网站数据库(一般名称中包含你的域名)。
  3. 打开 SQL 选项卡。
  4. 输入以下语句并执行:
DELETE FROM wp_actionscheduler_actions
WHERE status IN ('complete', 'cancelled', 'expired', 'pending', 'failed');

⚠️ 如果你的数据库表前缀不是 wp_(比如 wp7a_),请相应修改。
💡 WooCommerce 会自动重新生成必要的任务,删除不会导致系统崩溃。


🧩 方法二:通过 PHP 脚本清理(适合不会操作 SQL 的情况)

  1. 在网站根目录(public_html)中新建文件:
    clear-as.php
  2. 内容如下:
<?php
require_once( dirname(__FILE__) . '/wp-load.php' );
global $wpdb;

// 删除所有非运行中的任务
$deleted = $wpdb->query("
    DELETE FROM {$wpdb->prefix}actionscheduler_actions
    WHERE status IN ('complete', 'cancelled', 'expired', 'pending', 'failed')
");

echo "已删除任务总数:{$deleted} 个\n";
  1. 执行方法(任选一种):
    • Hostinger → 开发 → PHP 命令行 中运行: php clear-as.php
    • 或直接访问网址: https://你的域名/clear-as.php
  2. 清理完毕后删除该文件,避免被他人访问。

🧩 方法三:使用后台插件临时清理(可视化操作)

安装官方插件 Action Scheduler(WooCommerce 官方维护):

  1. WordPress 后台 → 插件 → 安装插件
  2. 搜索 “Action Scheduler”
  3. 安装并启用
  4. 前往 工具 → Scheduled Actions
    • 选择状态为 Complete, Failed, Pending, Cancelled, Expired 的任务
    • 批量删除即可

✅ 优点:安全、可视化操作,不需要 SQL
⚠️ 缺点:如果任务数量太多(上千条),操作会变慢。


🧩 可选优化:清理后压缩表体积

清理大量任务后,表空间不会立即缩小,可以执行以下语句优化数据库:

OPTIMIZE TABLE wp_actionscheduler_actions;
OPTIMIZE TABLE wp_actionscheduler_claims;
OPTIMIZE TABLE wp_actionscheduler_groups;

执行后数据库空间会立即回收,提升后台查询速度。


⚠️ 三、操作前后建议

操作前

  • 务必备份数据库:Hostinger → hPanel → 备份 → “生成新备份”
  • 建议记录清理前任务数量,方便对比效果。

操作后

  • WooCommerce 会自动重新生成必要任务(如库存同步、订单清理)。
  • 可以在后台 WooCommerce → 状态 → 日志 / 计划任务 查看是否正常运行。
  • 清理完成后可在 phpMyAdmin 中查看表记录数是否减少。

✅ 四、常用 SQL 汇总表

目标SQL 命令
删除已完成DELETE FROM wp_actionscheduler_actions WHERE status='complete';
删除失败任务DELETE FROM wp_actionscheduler_actions WHERE status='failed';
删除已取消任务DELETE FROM wp_actionscheduler_actions WHERE status='cancelled';
删除即将进行任务DELETE FROM wp_actionscheduler_actions WHERE status='pending';
删除所有非运行任务DELETE FROM wp_actionscheduler_actions WHERE status IN ('complete','cancelled','expired','pending','failed');
清空整个任务表TRUNCATE TABLE wp_actionscheduler_actions;(谨慎)
优化表体积OPTIMIZE TABLE wp_actionscheduler_actions;
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇