llms_is_post_restricted_by_sitewide_membership( int $post_id,  $user_id = null )

Determine if a post should bypass sitewide membership restrictions If sitewide membership restriction is disabled, this will always return false


Description Description

This function replaces the now deprecated site_restricted_by_membership() (and has slightly different functionality)


Parameters Parameters

$post_id

(int) (Required) WP Post ID


Top ↑

Return Return

(bool|int) if the post is not restricted (or there are not sitewide membership restrictions) returns false if the post is restricted, returns the membership id required


Top ↑

Source Source

File: includes/functions/llms.functions.access.php

function llms_is_post_restricted_by_sitewide_membership( $post_id, $user_id = null ) {

	$membership_id = absint( get_option( 'lifterlms_membership_required', '' ) );

	// site is restricted to a membership
	if ( ! empty( $membership_id ) ) {

		/**
		 * Pages that can be bypassed when sitewide restrictions are enabled
		 */
		$allowed = apply_filters( 'lifterlms_sitewide_restriction_bypass_ids', array(
			absint( $membership_id ), // the membership page the site is restricted to
			absint( get_option( 'lifterlms_terms_page_id' ) ), // terms and conditions
			llms_get_page_id( 'memberships' ), // membership archives
			llms_get_page_id( 'myaccount' ), // lifterlms account page
			llms_get_page_id( 'checkout' ), // lifterlms checkout page
		) );

		if ( in_array( $post_id, $allowed ) ) {
			return false;
		}

		return $membership_id;

	} // End if().
	else {

		return false;

	}

}

Top ↑

Changelog Changelog

Changelog
Version Description
3.0.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.