获取所有WooCommerce订阅
问题描述:
我需要创建一个wordpress模板来收集所有Woocommerce订阅,但我遇到了文档问题。我需要知道要导入哪些文件以及要调用哪个函数。获取所有WooCommerce订阅
谢谢你的建议。
答
由于订阅是自定义文章类型,因此您可以先获取所有订阅ID。然后在foreach循环中,您将能够获得WC_subscription对象。
global $wpdb;
$posts = $wpdb->prefix . "posts";
// get all subscriptions IDS
$subscriptions_ids = $wpdb->get_col("
SELECT ID
FROM $posts
WHERE post_type LIKE 'shop_subscription'
");
foreach($subscriptions_ids as $subscription_id){
// Get an instance of the WC_Subscription object
$subscription = new WC_Subscription($subscription_id);
}
与
$subscription
对象
然后和$subscription_id
,你将能够做你想做的,使用WC_Subscription
方法来获得所需要的数据或专用功能使用订阅ID。
官方开发者文档:
答
您可以使用内置的功能wcs_get_subscriptions($参数),并通过以下的$ args
$args = array('subscriptions_per_page' => -1);
$subscriptions = wcs_get_subscriptions($args);
您甚至可以通过参数中的订阅状态进行过滤。