隐藏“免费"管理面板中WooCommerce订单部分中的订单 [英] Hide "free" orders in WooCommerce orders section from admin panel

查看:119
本文介绍了隐藏“免费"管理面板中WooCommerce订单部分中的订单的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一些零成本(免费)的活动.但是他们使我的订单页面真正变得满满且令人困惑.

I have some events that are zero cost (free). But they are getting my orders page really full and confusing.

现在在WooCommmerce订单管理面板中,我想隐藏所有价格为0的订单.

Now in WooCommmerce orders admin panel, I want to hide all orders which have 0 as Price.

是否有任何钩子或过滤器功能可实现这一目标?

Is there any hook or filter function available to achieve this?

推荐答案

您可以使用 parse_query 过滤器来删除免费订购" $pagenow全局变量.

You can remove Free order it by using parse_query filter with $pagenow global variable.

add_filter('parse_query', 'wh_alterAdminPostList');

function wh_alterAdminPostList($query)
{
    global $pagenow;
    if (is_admin() && $pagenow == 'edit.php' && isset($_GET['post_type']) && $_GET['post_type'] == 'shop_order')
    {
        $query->query_vars['meta_query'] = [
            [
                'key' => '_order_total',
                'value' => 0.00,
                'compare' => '>',
                'type' => 'DECIMAL',
            ]
        ];
    }
}

代码进入您的活动子主题(或主题)的function.php文件中.或在任何插件php文件中.
代码已经过测试并且可以正常工作.

希望这会有所帮助!

这篇关于隐藏“免费"管理面板中WooCommerce订单部分中的订单的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆