Woocommerce批量删除待处理任务

您所在位置:

在最近的一个项目中,我需要一种快速的方法来直接从 WordPress 仪表板批量删除待处理和失败的 Action Scheduler 作业,因此我为此创建了一个自定义工具。

WooCommerce > Status > Tools(WooCommerce > 状态 > 工具)部分包含了很多有用的调试和维护功能,但你知道你可以在这里添加自己的自定义工具吗?

当你的网站有成千上万个不再需要的队列操作,或者插件出现故障导致大量工作卡死时,这就特别有用了。这种方法无需手动运行 SQL 查询或使用 WP CLI,只需在 WooCommerce 管理器中点击一个按钮即可。

在本教程中,我将向你展示如何使用 WooCommerce 的内置 API 注册你自己的自定义工具,以及如何触发和删除所有待处理或失败的操作。

下面是开始学习的完整片段!

WooCommerce: 批量删除待处理失败的预定操作 (1)
WooCommerce: 批量删除待处理失败的预定操作 (1)

PHP 码段: 添加自定工具删除动作调度失败/处理的工作 @ WooCommerce Status

此 PHP 代码段在 WooCommerce > Status > Tools(WooCommerce > 状态 > 工具)部分添加了一个自定义工具,允许您直接从 WordPress 仪表板批量删除所有待执行的 Action Scheduler 操作。

它使用 woocommerce_debug_tools 过滤器注册了一个名为 “清理待执行操作 ”的新工具。点击 “运行 ”按钮后,回调程序会直接运行 SQL 查询,每批最多删除 10,000 行状态为 “待处理 ”的操作,如此重复,直到没有此类操作为止。

如果你的数据库中包含成千上万的卡住或过时的计划操作,会拖慢网站速度或堵塞操作调度程序队列,那么这将特别有用。

如果想删除失败的操作,只需将 SQL WHERE 子句中的 “pending ”改为 “failed ”即可。请务必更新工具的名称和描述,以便管理界面显示正确的行为。

请谨慎使用,尤其是在实时网站上,因为它会永久删除数据库条目!

add_filter( 'woocommerce_debug_tools', 'bbloomer_bulk_delete_pending_scheduled_actions' );
 
function bbloomer_bulk_delete_pending_scheduled_actions( $tools ) {    
    $tools['clean_pending_actions'] = [
        'name' => 'Clean Pending Actions',
        'button' => 'Run',
        'desc' => 'Deletes all pending Action Scheduler actions.',
        'callback' => function() {
            global $wpdb;
            $table = $wpdb->prefix . 'actionscheduler_actions';
            $batch_size = 10000;
            $deleted = 0;
            do {
                $rows_deleted = $wpdb->query( "DELETE FROM $table WHERE status = 'pending' LIMIT $batch_size" );
                $deleted += $rows_deleted;
            } while ( $rows_deleted > 0 );
            return sprintf( 'Deleted %d pending actions.', $deleted );
        }
    ];   
    return $tools;
}

 

在领英上分享这篇文章
本篇文章内容
    Add a header to begin generating the table of contents

    联系我们

    郑州白帽子网络科技有限公司是一家专业做外贸网站建设,谷歌SEO优化、谷歌SEM推广公司。
    郑州白帽子网络科技微信图
    添加请说明需求
    Picture of 郑州白帽子

    郑州白帽子

    郑州白帽子是一家提供外贸网站定制和白帽谷歌SEO优化的公司,我们会不定期的分享关于外贸的一些知识,以及如何进行外贸建站和谷歌SEO优化推广。我们的核心价值观是给客户提供价值,通过我们专业的服务让客户获得更多的询盘!了解更多关于外贸、外贸建站谷歌SEO优化推广的细节,欢迎联系我们!

    更多文章
    外贸独立站域名能不能带横杠
    外贸建站

    外贸独立站域名注册几年比较好?

    域名注册年限的选择应结合企业的实际情况和发展阶段。短期注册适合初创企业控制成本,中长期注册适合大多数企业平衡稳定性与成本,而长期注册则适合成熟企业保护品牌和锁定域名稳定性。最终,域名的成功更多依赖于网站内容质量和用户体验,而非注册年限本身。

    外贸域名-拼音好还是英文好
    外贸建站

    外贸网站新老域名对比分析

    老域名和新域名各有优劣,选择时需要综合考虑品牌定位、预算、SEO需求和业务目标。如果老域名的历史记录良好且与业务相关,它可以帮助你快速起步;而新域名则为你提供了更大的品牌灵活性和长期发展空间。最终,域名只是工具,真正决定网站成功的还是内容质量和用户体验。

    外贸网站域名选择指南
    外贸建站

    外贸独立站域名是否需要国家后缀?

    解析外贸网站域名选择中的国家后缀优缺点,结合目标市场与业务需求,提供本地化与全球化域名策略建议,助力品牌扩展与SEO优化。

    滚动至顶部

    登陆

    注册