In the Oxygen Facebook group a user asked:
Looking to have an archive page for a CPT (locations). Where all members will login and visit. Upon visiting the page, they should only see posts that have a custom tax that matches their membership product.
This members-only tutorial provides the steps to
- create a membership product using WP-Members
- assign a membership to a user (subscriber)
locationCustom Post Type having a
Sample location items: House 1, House 2, House 3, House 4, House 5 and House 6.
Sample taxonomy terms: Miami, New York, Tulsa.
Of these, House 3 and House 6 are tagged as Miami.
Let's say a user,
has been given product access to
When this user is viewing example.com/locations/ he/she should only see House 3 and House 6 because these CPT entries have the taxonomy term that matches the user's membership.
Install and activate WP-Members.
Settings > WP-Members > Other Settings: Tick "Enable Products".
Configure other settings as needed.
Go to Memberships and add a new product named say, "Miami" (to follow along with the tutorial).
Add a new test subscriber user named say
post type using CPT UI or otherwise.
Set Has Archive to True.
as the post type archive slug.
taxonomy attached to Locations.
Create a few sample taxonomy terms: Miami, New York, Tulsa.
Add a few sample location CPT items: House 1, House 2, House 3, House 4, House 5 and House 6.
Set Miami as the location for House 3 and House 6.
Note: This tutorial not only works when a CPT has one taxonomy term set, but also when more than one term has been set.
Set up a Template that applies to
If using Oxygen, add an Easy Posts component and ensure that query type is left as Default.
With a simplified Template PHP and CSS, it should show all the CPT items like this:
Install and activate Code Snippets plugin.
Go to Snippets > Add New.
Title: Pre-Filter Locations by Customer(s)
This is a premium members-only content.
To view the rest of the content, please sign up for membership ($47/month or $499 one-time).
Already a member? Log in below or here.