目前,我正在尝试检查用户是否有权访问某个页面(基于他们的会员计划)。下面是我的代码,但似乎 wc_memberships_is_user_active_member 仅检查用户是否是活跃会员。
if( wc_memberships_is_post_content_restricted() && is_page($postid) && wc_memberships_is_user_active_member( $membership_plan ) ) {
//do something
} else {
//do something
}
提前致谢。
我设法使用下面的代码来完成此操作,它检查用户(具有当前会员资格)是否能够访问该页面:
function can_user_access_content($user_id,$post_id){
//check if there's a force public on this content
if(get_post_meta($post_id,'_wc_memberships_force_public',true)=='yes') return true;
$args = array( 'status' => array( 'active' ));
$plans = wc_memberships_get_user_memberships( $user_id, $args );
$user_plans = array();
foreach($plans as $plan){
array_push($user_plans,$plan->plan_id);
}
$rules = wc_memberships()->get_rules_instance()->get_post_content_restriction_rules( $post_id );
foreach($rules as $rule){
if(in_array($rule->get_membership_plan_id(), $user_plans)){
return true;
}
}
return false;
}
if(can_user_access_content(get_current_user_id(),$post->ID)){
//do something
} else {
//do something
}
保罗提供的答案:WooCommerce 会员资格:有条件检查页面访问 https://stackoverflow.com/questions/37714426/woocommerce-memberships-conditional-to-check-a-page-access
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)