我正在尝试编写一个函数,用于检索使用指定优惠券代码并处于指定日期范围内的WooCommerce订单列表,然后总结应用于这些订单的总折扣。如何检索使用特定优惠券的WooCommerce订单列表?
一点谷歌搜索我觉得我应该用类似
$customer_orders = get_posts(array(
'numberposts' => -1,
'meta_key' => ???,
'meta_value' => $CouponToSearchFor,
'post_type' => wc_get_order_types(),
'post_status' => array_keys(wc_get_order_statuses()),
));
之后,我已经试过:
'meta_key' => 'coupon'
'meta_key' => 'shop_coupon'
'meta_key' => '_coupon'
但这些都不工作。我怎样才能找出哪些条件会给我我需要哪些meta_key
/meta_value
条款?
此外,我认为meta_query
可用于执行日期筛选作为此get_posts()
查询的一部分,是否正确?
非常感谢你的解释。这是非常彻底的。我已经连接了我的实用程序插件中的函数,但是当我在查询后打印$ order时,它是一个空的Array()。我再次检查了优惠券代码和日期范围,以确保此输入的订单存在。我打印了$查询,并在那里看起来正确。我是PHP和Wordpress开发新手,但你的代码是有道理的,所以我想知道如果我做错了什么? – capsid
我可以使用phpMyAdmin中的部分查询来选择优惠券,所以我知道他们在那里。我也加倍检查以确保前缀是正确的。当我在phpMyAdmin中运行整个打印的查询时,我得到了同样的空集。谢谢你的想法。 – capsid
我可以在phpMyAdmin中一直选择正确的订单,直到零件和日期(p。post_date)在'11/01/2016'和'12/31/2016''之间' 当我在订单中添加该位时,即使我手动验证了适用订单的日期,也不再正确选择。 – capsid