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.

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.

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.
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
- Insert the Content Visibility Block.
- 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
- 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.

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.

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.
Related: Sell Courses with PMPro
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.
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.
- Select a piece of content to edit with Elementor.
- Edit a widget and open the “Advanced” tab.
- Toggle the “Paid Memberships Pro” section and select the membership levels that can view the element.
- Leave this section blank if you would like all website visitors, regardless of their membership level status, to view the element.
- Save and publish your content.

Our documentation provides more information about restricting content with Elementor as well as a video walkthrough.
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.
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
- Navigate to Forums in your WordPress admin and select a forum to edit.
- On this page, you will see a Require Membership panel in the right column of the editing screen.
- 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.
- Click Update to save your changes.
Other 3rd Party Plugin Forum Options
- PeepSo: Protect your PeepSo forums with the Paid Memberships Pro Integration Plugin for PeepSo.
- phpBB: Restrict access to phpBB forums using the BridgeDD Connect plugin.
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.
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.
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.
Post

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 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.
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.
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]
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.