Controlling Access To & Visibility Of Pages & Posts
Overview
Access to the entire page/post is controlled based upon the conditions specified within the ActiveMember360 panel when creating or editing the page/post. These settings are very comprehensive and permit many combinations of access conditions to be defined.
The settings within the ActiveMember360 panel are also used to determine the behaviour the visitor experiences when they do not satisfy the conditions to view the page/post. This includes whether the page/post is shown in menus/widgets, the display of excerpts and any redirect performed.
If no settings are made in the ActiveMember360 panel for a page/post then the page/post will be accessible to all visitors and will appear in every menu/widget.
After specifying the desired ActiveMember360 access controls please ensure you Publish/Update/Save Draft the page/post prior to entering any visual page editor such as Beaver Builder, Elementor, Div, Thrive Architect etc.
In the simplest case access can be permitted only to those with a certain ActiveMember360 Membership however any of the following can control access.
The access to and visibility of pages/posts can be controlled by any combination of:
- ActiveMember360 Memberships
- Contact list status:
- Contact is active in any or all of the lists selected
- Contact is unconfirmed in any or all of the lists selected
- Contact is unsubscribed in any or all of the lists selected
- Contact is bounced in any or all of the lists selected
- Contact tag status:
- Contact has any or all of the tags selected
- Contact does not have any or all of the tags selected
- Contact field comparison:
- Contact has a contact field that compares with a value
- Contact has a contact field that compares with another of their contact fields
- User login status:
- User is logged in
- User is not logged in
- User has failed payment status
- It is the user’s first login
- User role status:
- User has any or all of the roles selected
- User does not have any or all of the roles selected
- PHP statement:
- Any WordPress conditional statement
- Any WooCommerce conditional statement
- Predefined conditional
- GamiPress User status:
- User has any or all of the achievements selected
- User does not have any or all of the achievements selected
- User has any or all of the ranks selected
- User does not have any or all of the ranks selected
- User has a points type total that compares with a value
- Learndash User status:
- User is enrolled in any or all of the courses selected
- User is not enrolled in any or all of the courses selected
- User has not started any or all of the courses selected
- User has in progress any or all of the courses selected
- User has completed any or all of the courses selected
- User has not completed any or all of the lessons selected
- User has completed any or all of the lessons selected
- User has not completed any or all of the topics selected
- User has completed any or all of the topics selected
- WooCommerce User status:
- User has purchased any or all of the products selected
- User has not purchased any or all of the products selected
- User has pending status for any or all of the subscriptions selected
- User has active status for any or all of the subscriptions selected
- User has on hold status for any or all of the subscriptions selected
- User has pending cancellation status for any or all of the subscriptions selected
- User has cancelled status for any or all of the subscriptions selected
- User has expired status for any or all of the subscriptions selected
- …any multiples and combinations of the above.
Access Conditions
If a user doesn't satisfy the conditions to access a page or post, the following happens in this order when that user attempts to access the page/post:
- If there's a manual excerpt for the page/post, it will be displayed.
- If not but there's an excerpt defined by the use of the Block Editor, Layout Elements, More block or the Classic Editor <!–more–> tag in the page/post content that will be displayed.
- If not but the option ActiveMember360, Settings, Excerpts, Force excerpts at all times is set to Yes, an excerpt will be displayed that is automatically generated from the page/post content.
- If not but the option for the ActiveMember360 setting When forbidden redirect to is set to anything but the Default 404 Page Handler the user will be redirected to the URL or page specified.
- If not but the option ActiveMember360, Settings, Special Pages, Alternate '404 - Page Not Found' page is set the user will be redirected to that page.
- If not and your theme includes a template called 404.php, that template will be called and the web page that generates displayed.
- If not, your server's default 404 Page Not Found will be displayed.
Set Page/Post Access Conditions
The page/post access conditions are set when editing or creating any page/post. The settings available in the ActiveMember360 panel are:
Inherit from parent
This setting will allow access to anyone who meets the access requirements for this page’s parent page.
This option is not available for setting the access conditions of posts and will not be shown.
Anyone at anytime
This setting will allow access to everyone at all times irrespective of whether a enforced login, as defined within ActiveMember360, Settings, Login, Always require login is required.
An obvious use for this is to provide everyone access to your privacy policy, terms of use etc.
Any logged in user
This setting will grant access to the page/post for any logged in user irrespective of their memberships.
Any public visitor
This setting will forbid access to this page/post to anyone who is logged in. It will only be available to visitors who are NOT logged in.
Administrator only
This setting will prevent this page/post from appearing in the menu/widget as well as deny access to anyone other than WordPress administrators. Any excerpt for this page/post will not be shown.
This setting will not hide a menu/widget item defined as a custom link using the page/post URL.
However it does override any conditional test for this page/post within a menu item’s ActiveMember360, Modules, Menu Control settings or within a widgets ActiveMember360, Modules, Widget Control settings.
Memberships
In the list after the settings detailed above each membership as defined in ActiveMember360, Settings, Memberships will be listed.
In the example only two memberships are defined so only two are shown in the list.
These settings will grant access to the page/post for a logged in user dependent upon their memberships.
If a membership is selected access is allowed for any logged in user who belongs to that membership (i.e. has the ActiveCampaign tag that defines the selected membership), but always dependent upon other settings within the ActiveMember360 panel.
If multiple memberships are selected access is allowed for any logged in user who belongs to at least one of the memberships (i.e. has at least one of the ActiveCampaign tags that define the selected memberships), but always dependent upon other settings within the ActiveMember360 panel.
If no memberships are selected, access conditions will be determined entirely by the other settings specified within ActiveMember360 panel.
Only/Not these Tags
This setting acts as an AND condition with the other settings in determining whether the visitor has access to the page/post.
e.g allow access if the visitor has one of the Memberships chosen AND has any of the Only/Not these Tags AND satisfies the Conditional.
This is used to define additional tag criteria beyond basic membership tags.
Terms that define the criteria are entered using the drop down. As you type either part of the tag name or tag id a filtered list will be displayed. Terms are shown with the nomenclature TagId – Tag Name that represents 'Has the tag named TagName'. For every tag there is also an additional term generated with the nomenclature not TagId – Tag Name that represents 'Does not have the tag named TagName'. Clicking on the appropriate term adds it to the list. Incorrect or no longer required selections can be removed by clicking on the X.
As an example: By selecting; 123 – TagNameFor123, 234 – TagNameFor234 , 345 – TagNameFor345, not 456 – TagNameFor456, anyone who DOES NOT have the tag named TagNameFor456 AND HAS EITHER tag named TagNameFor123 OR tag named TagNameFor234 OR tag named TagNameFor345 is granted access to the page/post providing they meet any other defined access conditions.
Conditional
This setting acts as an AND condition with the other settings in determining whether the visitor has access to the page/post.
e.g allow access if the visitor has one of the Memberships chosen AND has any of the Only/Not these Tags AND satisfies the Conditional.
From the Allow access if the conditional evaluates drop down select whether the conditional needs to evaluate as True or False to display the page/post.
From the Select Conditional drop down select the required conditional to be evaluated.
Active conditionals are shown in the drop down with the suffix of (publish).
Adding/defining a Conditional is detailed at Adding Conditionals.
Excerpt only with permissions
This setting will result in excerpts being ignored when determining this page/post’s visibility for a user unless a user first satisfies all access conditions.
An excerpt will only be displayed to users who satisfy all access conditions. Users who do not will see neither the full content nor the excerpt, if one exists.
Be aware that the visibility of the excerpt influences the visibility of pages/posts within menus and widgets.
Hide from menu only
This setting will prevent this page/post from appearing in any menu/widget. It will not prevent access to the page/post itself.
This setting will not hide a menu/widget item defined as a custom link using the page/post URL.
However it does override any conditional test for this page/post within a menu item’s ActiveMember360, Modules, Menu Control settings or within a widgets ActiveMember360, Modules, Widget Control settings.
When forbidden redirect to
This setting is used to determine how a HTTP standard response '404 - Not Found' error is treated. This error typically arises when any of the following apply:
- The user does not satisfy the conditions to access a page/post and no excerpt is defined or being automatically generated for that page/post.
- The requested page does not exist within the site.
The choice of settings are to redirect to:
- The default 404 site handler.
- Any of the pages/posts defined in your site.
- A custom URL.
Run automation on comment
This option is only available if the post has WordPress comments enabled.
Here you can select an ActiveCampaign automation that is run for the contact after a successful comment submission.
Examples
- Example 1
- Example 2
- Example 3
- Example 4
- Example 5
Allow access to the page for Any logged in user. For others show the default 404.php unless the page/post has an excerpt defined in which case that will be shown:
Allow access to the page for any logged in user who HAS EITHER of the ActiveCampaign tags that define the Premium OR Free memberships, tag ids 396 and 408 respectively. For others redirect to the Our Products page unless the page/post has an excerpt defined in which case that will be shown:
Allow access to the page for Any logged in user who HAS the ActiveCampaign tag named Customer with tag id 547. For others show the default 404.php unless the page/post has an excerpt defined in which case that will be shown:
Allow access to the page for any logged in user who HAS the ActiveCampaign tag that define the Premium memberships tag id 396 AND ALSO HAS the ActiveCampaign tag named Customer with tag id 547. For others show the default 404.php unless the page/post has an excerpt defined in which case that will be shown:
Allow access to the page for Any logged in user AND for whom the conditional 6588 - Gold Members with Silver GamiPress Award evaluates as TRUE. For others redirect to the Our Products page unless the page/post has an excerpt defined in which case that will be shown:
Bulk Editing Page/Post Access Conditions
On occasions you may wish to change or set the page/post access conditions for multiple pages or posts in a single operation.
That can be done as detailed within Bulk Editing ActiveMember360 Page/Post Settings.
If you wish to see in bulk all the current ActiveMember360 page/post settings please use ActiveMember360, Utilities, Page Settings
Excerpts
Excerpts are used in certain circumstances when a visitor does not satisfy the access conditions to view the entire page/post.
To gain a fuller understanding of excerpts and how they are used with ActiveMember360 please visit Excerpts.
Special Pages
ActiveMember360 treats certain pages within your WordPress site as special pages.
These pages will always be accessible to any visitor to the site because they are essential to the functioning of the site.
For more information please visit Special Pages.
Page/Post Visibility In Menus & Widgets
Typically if a user doesn't satisfy the conditions to access a page or post those items will not be seen in WordPress menus or widgets.
However they will be seen irrespective of the ActiveMember360 access settings if:
- The menu/widget item has been specified using a custom link.
Or providing that the ActiveMember360 settings Administrator only or Hide from menu only have not been selected and if:
An excerpt exists for the page/post. This includes automatic excerpts.
The page/post has any level of child post/page that is visible in the menu or widget.
ActiveMember360, Modules, Menu Control settings or ActiveMember360, Modules, Widget Control settings determine the post/page should be shown.