Blog Password Protection – BPP is a lightweight, easy-to-use plugin that helps you protect your entire WordPress blog or specific parts of it with a password. Whether you』re running a private journal, members-only site, or internal project blog — this plugin allows you to manage visibility and access without any complex setup.
It includes a customizable popup login prompt, the ability to restrict content by category, bypass access via secure URLs, and selectively disable protection for logged-in users by role.
🛡️ Core Features:
- Password-protect the entire blog or specific categories.
- Popup login box with custom title, message, and return button.
- Shareable secure access link (no password needed).
- Role-based exclusion (e.g. allow Editors or Admins without login).
- Feed protection and error messages for incorrect passwords.
- Flexible cookie session lifetime (e.g. 24h, 72h, 7d).
- Fully managed via a settings page in the WordPress admin panel.
Plugin Structure
The plugin consists of the following core files:
-
plugin_settings_page.php
- Registers the plugin settings page under
Settings > Password Protection. - Provides UI controls for all plugin options, such as:
- Password setting
- Cookie session lifetime
- Category protection checkboxes
- Secure link sharing toggle
- User role bypass
- Popup customization (title, text, return link)
- Registers the plugin settings page under
-
secure_content.php
- Implements content filtering logic.
- Hooks into the page rendering process to:
- Detect protected categories or homepage
- Display the popup login interface
- Injects the popup modal HTML and JavaScript dynamically into the frontend.
-
validation.php
- Handles password validation via
POST. - Sets encrypted cookies with the correct password session.
- Supports error messaging for incorrect attempts.
- Provides content masking when accessed through RSS feeds.
- Validate session status
- Handles password validation via
-
Screenshots (screenshot-1.png, screenshot-2.png, screenshot-3.jpeg)
- Preview the admin panel settings interface.
- Show how the popup form appears on the frontend.
- Example of protected content in action.
Credits
This plugin was created by Dmytro Zamaraiev for easy blog protection.
License
This plugin is licensed under the GNU General Public License v3.0.






