我遇到了这个问题,我先检查用户是否有活动订阅,然后才能将内容发送到购物车。
有一个钩子叫woocommerce_add_to_cart_validation
.
因此,您可以在其上添加如下过滤器:
add_filter( \'woocommerce_add_to_cart_validation\', \'check_subscriptions\', 10, 2 );
然后检查用户是否有如下活动订阅:
$user_id = get_current_user_id();
$active_subscriptions = get_posts( array(
\'numberposts\' => -1,
\'meta_key\' => \'_customer_user\',
\'meta_value\' => $user_id,
\'post_type\' => \'shop_subscription\',
\'post_status\' => \'wc-active\',
) );
if(!empty($active_subscriptions)) return true;
else return false;
我写了一篇关于他的博客文章,对初学者来说很容易阅读:
https://robinhenniges.com/woocommerce-subscription-allow-only-one-active-subscription/