WordPress is a flexible tool that can be used to create and display content of all kinds. This post explains various ways to restrict access to your WordPress website. Keep reading to learn how to lock down ANY piece of content, feature, or download you might have on your WordPress site.

All of the instructions below assume that you are running the latest versions of WordPress, Paid Memberships Pro, and any other plugins mentioned.

If we missed something or you still have questions about protecting any specific kind of content on your site, let us know.

How to Restrict Access to Anything in WordPress

Ads

Ads are a classic method of monetizing your blog. For membership sites, you have to consider which ads to display for non-members, per-level, or completely hide for an “ad-free” experience.

Our guide offers six different options for you to control and display ads to non-members and per level for your PMPro-powered membership site.

No Ads for Members graphic.

Any URL

There are some rare cases where a URL generated in the WordPress site isn’t a piece of content you can actually edit. In this case, you need custom code to protect access to the specific URL.

This tutorial gives you a very simple-to-edit code recipe that blocks access to a URL in your WordPress site and redirects visitors and non-members to your pricing page. It secures an entire content hierarchy by targeting a parent URL (e.g., /courses/ also protects /courses/python/). Think of this code recipe as a short-circuit to protecting the entire tree of subpages.

Another WordPress Site

You can use PMPro on one WordPress site to restrict access to other WP sites. If you are using WordPress Multisite, you can use our Multisite Membership Add On and set up PMPro on the main site while restricting access to subsites.

To restrict access to a separate WordPress site hosted on a different server, you can use the WP Single Sign On plugin, which is available in beta on GitHub. The WP SSO plugin allows users and members of one “host” site to log into a second “client” site where the SSO plugin is set up.

Beaver Builder

Beaver Builder is a page builder we natively support in the core Paid Memberships Pro plugin. With PMPro, you can protect access to Beaver Builder Modules.

This method assumes you have Paid Memberships Pro and Beaver Builder installed and activated on your WordPress site.

How to Restrict Content with Beaver Builder

  1. Select a piece of content to edit with Beaver Builder.
  2. Edit a module and open the “PMPro” tab.
  3. Enable the Paid Memberships Pro module visibility by selecting ‘Yes‘.
  4. Now, select the membership level that is required in order to view this Beaver Builder module.
  5. Save and publish your content.
  6. Visit our documentation page for more information and a video walkthrough of our Beaver Builder Integration.

Visit our documentation page for more information and a video walkthrough of our Beaver Builder Integration.

Beaver Builder "PMPro" tab settings.

Blocks

The Block Editor (Gutenberg) is the default builder for WordPress. To show or hide blocks from members, adjust the block’s Content Visibility or use the Content Visibility Block.

Using the Content Visibility Block

  1. Insert the Content Visibility Block.
  2. Define Visibility Settings.
    • Choose Visibility Mode – Show or Hide
    • Select Audience – All Members, Specific Membership Levels or Logged-In Users
    • Configure Membership Levels (if applicable)
    • Show No Access Message
  3. Save Changes to the Post/Page.

For more advanced content targeting, you can leverage the power of nested blocks within the WordPress block editor.

Our documentation page provides more details and a video walkthrough of our Content Visibility Block.

Screenshot of block settings in WordPress editor to show the settings for content visbility

Community

Use the Discord Integration Add On for Paid Memberships Pro to restrict access to your Discord channel.

To keep non-members from posting comments on your WordPress posts, use our recipe.

Check out the Communities Hub™, with all of the best resources we have to help you sell access to your online community with WordPress and Paid Memberships Pro.

To restrict access to your BuddyPress or BuddyBoss community, our BuddyPress Integration Add On page gives you step-by-step instructions to set up your community.

PMPro Community Hub graphic

Course

If your course is just a post, page, file, video, or other piece of content listed here, select the type of content and follow the instructions in this guide to protect that kind of content.If your course is just a post, page, file, video, or other piece of content listed here, select the type of content and follow the instructions in this guide to protect that kind of content.

Courses for Membership Add On Icon

If you would like to organize your course content into Courses and Lesson custom post types (CPTs), try our Courses Add On for Paid Memberships Pro.

The Courses Add On is also our preferred way to restrict access to courses built with LifterLMS, LearnDash, TutorLMS, or Sensei LMS.

Custom Post Types

The Custom Post Type (CPT) Membership Access Add On for PMPro will add the “Require Membership” meta box to any CPT.

  1. Install and activate the Custom Post Type Add On.
  2. Navigate to Memberships > CPT Access in the WordPress admin.
  3. Define which CPTs you want to restrict using the Select CPTs multi-select field.
  4. Select a page for the Redirect to setting (optional) to redirect non-members to a selected page when they try to access the CPT, usually your Membership Levels page.
  5. Save Settings.

Now, edit your single CPTs and locate the Require Membership panel. Select which levels you want to require to access this post.

Directory & Profile

If you offer a public or members-only searchable directory, PMPro can restrict access to view the directory, individual profiles, and even control who can view specific profile fields.

Screenshot of a Member Directory with a Pricing Table and Buy Button

Divi

Divi is a popular page builder natively supported in the core Paid Memberships Pro plugin.

This method assumes you have Paid Memberships Pro and the Divi Page Builder Plugin or a Divi Theme installed and activated on your WordPress site.

  1. Create or edit a post or page you would like to edit.
  2. Edit either the section or row and click on the “settings” icon.
  3. Select the ‘Advanced’ tab.
  4. Toggle the “Paid Memberships Pro” row and enter in the membership levels that can view the content of the element.
  5. Toggle to show a “No Access” message on the frontend to non-members or members without a required membership level.
  6. Save and publish your content.
Screenshot of the Divi No Access Message from an Edit Post or Page screen.

View our documentation to learn more about our Divi Integration.

Elementor

Elementor is a popular page builder natively supported in the core Paid Memberships Pro plugin. With this integration, you will be able to restrict content at the element, container or widget level.

To start using Elementor with Paid Memberships Pro, you need to install and activate both plugins.

  1. Select a piece of content to edit with Elementor.
  2. Edit a widget and open the “Advanced” tab.
  3. Toggle the “Paid Memberships Pro” section and select the membership levels that can view the element.
  4. Leave this section blank if you would like all website visitors, regardless of their membership level status, to view the element.
  5. Save and publish your content.
Screenshot of Paid Memberships Pro settings in Elementor

Our documentation provides more information about restricting content with Elementor as well as a video walkthrough.

Events

Create exclusive experiences by restricting event access based on membership. The Events for Membership Add On integrates with plugins like Events Manager, The Events Calendar, and Sugar Calendar, letting you control who can view event details, register, or even see the event at all.

Once the plugin is installed and activated, the built-in logic will automatically detect which events plugin is being used on your site—no additional settings required.

  1. In your events plugin, edit an existing event or create a new event.
  2. Check the appropriate membership levels in the Require Membership meta box to restrict access.
  3. Save the event.
Fancy splash graphic for the events for members-only add on

For additional information, action and filter hooks, and video walkthroughs for the different event plugins, visit our Events for Membership Add On Page.

Everything

To restrict access to your entire WordPress site, use our Lock Down Everything But Homepage for Non-Users code recipe. This method ensures that non-members are redirected to a landing or login page unless they have the appropriate membership level.

You can optionally allow access to specific public pages—such as your homepage or sales page—while protecting everything else. This setup is ideal for fully gated communities, internal portals, or sites where all content should be members-only.

Form

To restrict access to a form on WordPress, embed the form into a post or page. Then use the content visibility block or mark the whole post or page to require membership. Only members will be able to view the page.

If you are using Gravity Forms specifically, you can use the Gravity PMP plugin by Ristretto Apps.

If you are using Contact Form 7, here is a tutorial on how to add a form to the member directory page.

Forums

Paid Memberships Pro can protect forum access for three popular forums plugins or third-party apps.

Our bbPress Integration Add On seamlessly extends PMPro’s membership access controls to your bbPress or BuddyBoss forums.

Restrict a Forum by Level

  1. Navigate to Forums in your WordPress admin and select a forum to edit.
  2. On this page, you will see a Require Membership panel in the right column of the editing screen.
  3. Select membership levels in this box to allow members-only access to the forum. This action protects the forum’s main topic page as well as individual topics.
  4. Click Update to save your changes.
Splash Image for bbPress Forum Integration Add On

Other 3rd Party Plugin Forum Options

Live Chat

To offer live chat as a member benefit, you can restrict access by controlling when the chat script loads based on membership status. Since most live chat tools are added to your site via JavaScript, this approach prevents non-members from seeing or using the chat feature entirely.

Our guide explains how to protect your live chat, including instructions for ArrowChat, iFlyChat, Wise Chat, and Zopium.Most live chat services work by embedding a JavaScript file onto your site. You can restrict access to your live chat by choosing which membership levels to run that JavaScript for. Read our guide here on how to protect your live chat, including instructions for ArrowChat, iFlyChat, Wise Chat, and Zopium.

Non-WP Files

To protect files that aren’t part of standard WordPress content—like PDFs, ZIPs, or media stored outside the Media Library—use our getfile.php method to route file access through Paid Memberships Pro.

This approach ensures that only logged-in members with the required level can access protected files, even if someone tries to access the file directly by URL. It’s ideal for securing sensitive documents, course materials, software downloads, or other non-WordPress assets.You can lock down non-WordPress files and entire directories of files using Paid Memberships Pro. Read our tutorial to learn how to route file requests through the PMPro getfile script to protect any file or folder using WordPress.

Newsletter & Email

Choose one of our email marketing integrations or use Zapier to add members to your email newsletter. With segmentation and membership level as a profile field, you can target specific member groups in your newsletter or email.

Check out the Paid Newsletters Hub™, with all of the best resources we have to help you sell paid newsletters with WordPress and Paid Memberships Pro.

Paid Memberships Pro Newsletter Hub Graphic

Other Apps

Paid Memberships Pro adds additional membership endpoints to the WordPress REST API, allowing you to connect any other app to your membership site. For simple integrations, we also have an example of how to build your own RESTful endpoint with WordPress and PMPro.

Zapier is another method to connect your site with third party applications. Checkout our documentation on PMPro’s native support for Zapier.

Page

To restrict a single page in WordPress, look for the “Require Membership” box in the right sidebar of the edit post page. Check any level that should have access to the post.

Paid Memberships Pro's Require Membership panel on single page edit

PDF or Other Files

To restrict access to PDFs and other files uploaded through the WordPress Media Library, embed the file in a post or page, then use the “Require Membership” setting or the Content Visibility Block to protect that content. Only members with access will be able to view or download the file.

For added protection—ensuring files can’t be accessed directly by URL—consider combining this with our getfile.php method, especially if the file contains sensitive or premium content. Or, if you have many files or large files hosted offsite, consider our integration for the Download Monitor plugin.

Podcast

To offer member-only podcast content, use a private feed solution integrated with Paid Memberships Pro. Two recommended options are:

Castos Add On Icon

Castos Private Podcasting: Automatically create private podcast feeds linked to a member’s account. Members can access episodes through supported podcast players while non-members are blocked.

Member RSS Add On Icon

Member RSS Add On: Generate unique, private RSS feeds for each member. You can protect audio files hosted in WordPress or offsite and deliver them securely via a podcast app or browser.

Post

Screenshot of the Require Membership metabox in WordPress editor.

To restrict a single post in WordPress, look for the “Require Membership” box in the right sidebar of the edit post page. Check any level that should have access to the post.

Post Categories

You can set which categories members have access to from the edit membership level page in the dashboard.

Navigate to Posts > Categories > Edit to protect a category by membership level.

For more information, visit our documentation page on how to set access at the category level.

Navigate to Posts > Categories > Edit to protect a category by membership level.

Post Tags

Restrict access to a post tag or any other built-in or custom taxonomy.

Navigate to Posts > Tags > Edit to protect a tag by membership level.

Navigate to Posts > Tags > Edit to protect a tag by membership level.

Post tag protection is built into PMPro, but if you have a custom post taxonomy, check out this companion code recipe to set up membership restrictions for other custom taxonomies and terms in your WordPress site.

Product

The WooCommerce Integration plugin for Paid Memberships Pro can be used to set member prices for products and otherwise link your WooCommerce shop to PMPro.

Here is a guide on how to require a membership level to purchase a specific category of products in WooCommerce.

WooCommerce Integration Add On

Another option to restrict access to a WooCommerce product or product from any other WordPress ecommerce plugin is to use the Custom Post Type (CPT) Membership Access Add On for Paid Memberships Pro. Add the product CPT via the settings, then use the “Require Membership” meta box on the edit product page to choose which membership levels can see that product.

Shortcodes

To hide a shortcode from non-members, wrap it in the membership shortcode and set which levels have access. You can also use the membership shortcode to show content to non-members and logged-out users only.

Shortcode example:

[membership]
Will show up for all members.
[/membership]

Video

To restrict access to a video on WordPress, simply embed that video into a post or page, then mark that post or page to require membership. Only members will be able to view the page.

Paid Memberships Pro Private Video Hub

Check out the Private Video Hub™, with all of the best resources we have to help you sell access to your private videos with WordPress and Paid Memberships Pro.

For more details, see our guides on how to sell videos online, including tutorials for restricting YouTube, Vimeo, Bunny.net, or Amazon S3 hosted videos. For a general overview, refer to our complete guide on private video membership sites with PMPro.

Ready to Lock Down Your Content?

WordPress paired with Paid Memberships Pro gives you complete control over who can access every part of your site—from posts and pages to events, files, and beyond. Whether you’re offering premium content, running a private community, or selling digital products, the tools and methods outlined here can help you restrict access exactly where and how you need.

If you didn’t see your specific use case covered, or if you need help implementing any of these methods, reach out to our team or explore our documentation for more examples and code recipes. We’re here to help you build a membership site that fits your goals.

Cover image from ebook 29 Nuggets of Wisdom Volume 1 - Sample Collection

Download the free ebook: Get 29 insights and ‘aha moments’ for new or veteran membership site business owners. Use these nuggets of wisdom to inspire or challenge you.



Was this article helpful?
YesNo