Skip to content
GPLWP Guides

How to restrict content access in WordPress

Membership & LMS Time About 30 minutes 6 steps Updated 30 Oct 2026

MEMBERSHIP & LMS
The short answer

WordPress can protect a page with one shared password or make it private for administrators and editors. If members need individual accounts, different access levels, registration, or partial content protection, use a membership plugin rather than trying to stretch the built-in visibility settings.

The route
  1. 01Define the access rules
  2. 02Use WordPress visibility for simple cases
  3. 03Create accounts and access groups
  4. 04Choose the membership route
  5. 05Protect content and set the fallback
  6. 06Test every access state

What you need

  • Administrator access to WordPress
  • A clear list of membership levels or user groups
  • A test account for each access level
  • A backup before changing access rules

Define the access rules

List what visitors, logged-in users, and each membership level should be able to see. Decide whether you are protecting whole posts, pages, lessons, downloads, or only sections inside a page.

Also decide what unauthorised visitors should see: a login prompt, a registration message, an excerpt, or a redirect to a pricing page. This prevents contradictory rules later.

Use WordPress visibility for simple cases

For one-off protection, edit the post or page and open the Status & Visibility settings. Choose Password protected for one shared password, or Private to limit visibility to users with the relevant WordPress permissions. WordPress documents private content as visible to administrators and editors, not ordinary subscribers.

This manual route is fine for an internal page or a small group that can share one password. It is not a proper membership system: password protection does not identify individual members, and WordPress does not provide built-in tiered access rules for a complete site.

Create accounts and access groups

For member-only content, create normal WordPress user accounts and assign users to the appropriate access group or membership level. WordPress roles control capabilities, but the default roles are mainly designed for administration tasks, not paid content plans. Avoid giving members Editor or Administrator access simply because you need them to read protected material.

If access must expire after a purchase or subscription ends, use a membership system that can manage the relationship between the user, the plan, and the content.

Choose the membership route

Install a membership or content-restriction plugin when you need individual logins, several access levels, registration, protected content inside a page, redirects, or integration with payments and an LMS. A membership system can apply rules to posts, pages, courses, categories, and other content types instead of relying on one shared password.

For a basic membership site, configure the plugin's access levels first, then connect each level to the content it should unlock. Do not protect only the menu item: a hidden menu link does not stop somebody who already knows the page URL.

Protect content and set the fallback

Apply the relevant access rule to each post, page, lesson, or content section. Add a useful restricted message with a login or registration path, and check whether the plugin should show an excerpt or hide the entire item.

Protect downloadable files separately. Restricting a page does not automatically secure a file whose direct Media Library URL has been shared. Also check caching: a page cached while logged in can sometimes be served to the wrong visitor if your cache is not configured to vary or exclude member pages.

Test every access state

Open the site in a private browser window and test the same URL as a logged-out visitor, a normal subscriber, and each membership level. Test direct URLs, search results, archives, navigation menus, downloads, and a page after logging out.

For the fast route, use PrivateContent. Its listed features include multilevel access rules, registration management, shortcodes, and integrations intended for membership and course sites. Set up the levels, assign the rules, place protected content where needed, and then run the same logged-out and member tests before launch.

The fast route

Let PrivateContent do it

Multilevel access rules, registration, and shortcodes for membership sites that need tiered content protection without coding.

Get PrivateContent

Sources

  1. wordpress.org /documentation/article/protect-posts-with-password/?utm_sour…
  2. wordpress.org /documentation/article/content-visibility-block-editor/?utm_…
  3. wordpress.org /documentation/article/roles-and-capabilities/?utm_source=op…

Questions

Can WordPress restrict content without a plugin?
Yes, but only for simple cases. WordPress can make an individual post or page password protected, or set it to Private for administrators and editors. It does not provide a built-in system for individual member accounts, tiered access, subscriptions, registration flows, or partial-content rules, so those requirements normally need a plugin or custom development.
Is a private WordPress page visible to subscribers?
No. WordPress's built-in Private setting is intended for users with the permissions to read private content, normally administrators and editors. A Subscriber account does not automatically gain access. Changing roles to force access can also grant unwanted editing capabilities, so use a membership access rule instead.
What is the difference between password protection and membership access?
Password protection uses one shared password stored in the visitor's browser, so it does not identify or manage individual members. Membership access checks a user's account, role, plan, or subscription and can support different rules for different groups. Use a password for occasional private material, not for a paid or tiered membership area.
Why can someone still access a restricted download?
A protected page and its downloadable file are not always the same protection boundary. If the file's direct URL is public, sharing that URL may bypass the page rule. Store sensitive downloads behind a system that checks access before serving them, and test the direct file URL while logged out. Also exclude member pages from caches that could serve logged-in content to other visitors.