示例#1
0
function memberful_wp_regulate_access_to_bbpress()
{
    if (!is_bbpress()) {
        return;
    }
    if (!memberful_wp_bbpress_protect_forums()) {
        return;
    }
    if (current_user_can('moderate')) {
        return;
    }
    if (memberful_wp_bbpress_restricted_to_registered_users() && is_user_logged_in()) {
        return;
    }
    $has_required_plan = memberful_wp_user_has_subscription_to_plans(get_current_user_id(), memberful_wp_bbpress_required_subscription_plans());
    $has_required_download = memberful_wp_user_has_downloads(get_current_user_id(), memberful_wp_bbpress_required_downloads());
    if ($has_required_plan || $has_required_download) {
        return;
    }
    wp_safe_redirect(memberful_wp_bbpress_unauthorized_user_landing_page());
    exit;
}
示例#2
0
/**
 * Check that the current member has at least one of the specified products
 *
 * @param string|array $slug    Slug of the product the user should have. Can pass an array of slugs
 * @param int          $user_id ID of the user who should have the product, defaults to current user
 * @return bool
 */
function has_memberful_download($slug, $user_id = NULL)
{
    list($required_downloads, $user_id) = memberful_wp_extract_slug_ids_and_user(func_get_args());
    return memberful_wp_user_has_downloads($user_id, $required_downloads);
}