1

我正在使用function.php主题中的功能:

我在登录时检查,如果用户没有活动订阅,它应该重定向到一个页面。我有两个用户,一个有有效订阅,另一个已过期。但是当我为两个用户使用此代码时,两者都处于 else 状态,这意味着没有订阅。

这不是产品订阅,而是对用户计划的订阅。

$active_subscriptions = get_posts(array(
    'numberposts' => -1,
    'meta_key'    => '_customer_user',
    'meta_value'  => $user_id,
    'post_type'   => 'shop_subscription', // Subscription post type
    'post_status' => 'wc-active', // Active subscription
));

if (!empty($active_subscriptions)) {
    echo "1";
    die;
    return true;
} else {
    echo "2";
    die;
}
4

1 回答 1

3

您可以尝试使用该wcs_get_subscriptions功能。

$subscriptions = wcs_get_subscriptions(
    array(
        'customer_id' => $user_id,
        'subscription_status' => 'wc-active',
        'subscriptions_per_page' => - 1
    )
);
于 2017-10-31T09:11:49.403 回答