Passster – Password Protection



Passster makes password protecting your content easy.

Global password protection, complete pages, posts, products(WooCommerce) or only parts of them with the integrated shortcode.
You can also use a modern and secure captcha solution instead of a password. Modern encryption keeps sure your passwords are incredibly secure.

Global Protection
Edit a page/post and activate the global protection. Every user will be redirected to that page as the correct password was submitted.

Page Protection
Edit a page and activate the page protection. This blocks the entire content of the page while keep things like your navigation and layout as it is.

Partly Protection
Use the shortcode included in Passster to protect only parts of your content.

You can use the following shortcode to partly password protect your content:
[passster password=”your-password”]your content[/passster]

You can also protect your content with a captcha:
[passster captcha=”true”]your content[/passster]

Widgets and ACF
As of version 3.4 Passster also supports the usage of the shortcode within fields created with Advanced Custom Fields and within Widgets (text widgets).

Page Builder

The page and global protection work fine with most page builders.
Due to the fact that most page builders aren’t capable of handing closing shortcodes directly, the partly protection can be a problem.

Currently, there is a (text) module included for Elementor.
Within the pro version, there is also a solution to protect entire rows within WPBakery Page Builder.

Due to the number of different page builders don’t expect soon implementations for partly protection within other page builders,
especially not within the free version.


  • restrict your entire website with a password
  • restrict complete pages/posts/products with a password
  • use a simple shortcode to protect parts of your content
  • ajax-driven unlock – no page reload required (optional)
  • modern and secure captcha with pure JavaScript
  • customise the style with the Customizer
  • use cookies to save access


  • use multiple passwords per page/post/product and shortcode
  • Google ReCaptcha v3 (invisible Captcha) or v2(Checkbox)
  • password lists for large sets of passwords
  • expire passwords from a list after one time usage, after a number of usages or by time (hours, days, weeks, months)
  • protect WPBakery rows
  • auto-unlock content per user and user role
  • modify description, headline, buttons and more on a page level
  • unlock content with encrypted links and use bitly to shorten the entire URL (optional)

Paired with exceptional support directly from the developer, timely updates and feature integrations and extensive documentation you can’t go wrong with Passster Pro.

Get it now on


I regulary optimize the documentation and release extensive tutorials on how to use Passster in a multitude of use-cases.

Learn more on


The free support is exclusively limited to the support forum.

Any kind of email priority support, customization and integration help need a valid premium license.


The plugin is coded with modern PHP and WordPress standards in mind. It’s fully OOP coded. It’s highly extendable for developers through several action and filter hooks.

Passster keeps your website performance in mind. Every script is loaded conditionally and all input and output data is secured.


All major texts and information can be modified from the admin area of Passster.

The plugin is fully translatable in your language. At the moment there are only en_EN and de_DE, but you can easily add your preferred language as a .po/.mo.

It’s also fully compatible with WPML and Polylang.

Tangkapan Layar

  • Passster Password Form
  • Passster Shortcode generator
  • Passster Customizer Options


Passster is simple to install:

  1. Download the .zip’
  2. Unzip
  3. Upload the directory to your ‘/wp-content/plugins’ directory
  4. Go to the plugin management page and enable the Passster Plugin
  5. Browse to Settings > Passster
  6. Customise your settings and your good to go!


7 April 2021
I use Passster for several websites and usecases, but especially in combination with woocommerce I really like this plugin. It's protecting woocommerce in any needed way, for product pages, main shop pages and category pages. These options are also helpful when you want to create and sell special membership products. The support is great too, help comes for you within 48 hours!
31 Maret 2021
Because I'm a WP-newbie I had some trouble installing this plugin, but the support was great and I got my questions answered within 24 hours. After everything was installed correctly using this plugin was much easier 😉 I use it mainly to create password-protected direct access links and it works great. P.S. This is also my first plugin-review here at and I hope I did everything right ... Greetings from Trentino-Alto Adige 😉
7 Maret 2021
Hi, I am really enjoying your plugin, this is exactly what I have been looking for. My only other option to password protect specific pages on my site was a $500 plugin. Your free version is exemplary and I can not wait to see what the paid version offers. My only question is, is there a way that I can edit the page where the password is entered? I would like to personalize that page more, add a message for my members etc. Is this possible and if so how can I do it?
15 Februari 2021
Sorry, I had to trash this plug-in and to look for something else. After installing the trial version, there is no such thing as "Setting", neither in WP Settings no in Passster menu which only contains "Options". Cannot even start working ! It must be a bug, but both the Guide and the plug-in author look sooo user-unfriendly, that I happily uninstall the whole stuff. Bye
15 Januari 2021
This plugin is compactly coded and simple to use which makes it very efficient and is helpful on all installations where password protection is needed. I can fully recommend using it. Support is great too!
27 November 2020
A clean and simple solution for protecting your passwords. I like the possibility to protect both complete pages and also only parts of them when needed. Thanks for creating this and 5 stars!
Baca semua 45 ulasan

Kontributor & Pengembang

“Passster – Password Protection” adalah perangkat lunak open source. Berikut ini mereka yang sudah berkontribusi pada plugin ini.


“Passster – Password Protection” telah diterjemahkan dalam 2 bahasa. Terima kasih kepada para penerjemah untuk kontribusi-nya.

Terjemahkan “Passster – Password Protection” dalam bahasa Anda.

Tertarik mengembangkan?

Lihat kode, periksa repositori SVN , atau mendaftar ke log pengembangan melalui RSS.

Log Perubahan


  • lighter freemius integration
  • admin UI improvements
  • direct links for documentation and support in admin header


  • added expire by usage and time for password lists (pro only)
  • added global password protection
  • base64 encryption for cookies
  • bugfix for bitly URL toggle (pro only)
  • improved uninstall with latest options
  • auto activate reload option if pagebuilder is activated


  • added support to unlock widgets via ajax
  • added support to unlock acf fields via ajax
  • added shortcode params to page protection (pro only)
  • added user restriction to page protection (pro only)
  • fixed one-time usage for password lists without ajax (pro only)
  • added option to redirect to source URL after link unlock (pro only)


  • latest freemius SDK
  • fixed ID parameter for multiple forms per page
  • custom headline, ID parameter for Recaptcha v2/v3
  • better enqueue for ReCaptcha v2


  • removed old cache busting prevent 404 errors for files
  • wp_enqueue_script for ReCaptcha preventing cache issues
  • introduced ajax loader to indicate verification
  • fixed metabox showing wrong selected password list
  • improved admin wording for more clarification
  • updated german translation files


  • WordPress 5.5 compatibility
  • Elementor with Ajax mode compatibility
  • added WPML config file
  • update german translation
  • prevent fatal error if ps_run_plugin() is already declared
  • number field instead of text for cookie duration
  • ReCaptcha without async defer (handled via Caching plugins)
  • fixed PHP notice for bitly integration


  • cache-busting for no-ajax mode and cookies
  • fixed double docs link
  • support option for third-party-shortcodes with pre-render
  • removed auto-space from password lists
  • new link encryption solution with metabox and bitly
  • hide parameter for WPBakery integration
  • updated and fixed german translation


  • performance improvements for password lists
  • support for Google ReCaptcha v2 with selection
  • more efficient ajax handling for different unlock methods.
  • auto-update cookie settings if no ajax mode is used.

  • more robust regex for various shortcode implementations
  • added action to track unlocks with Google Analytics and other tracking solutions


  • fixed additional params to overwrite texts in the shortcode
  • fixed empty content while using additional parameters
  • added tablepress support for ajax
  • implemented old recaptcha parameters for backwards compatibility


  • better compatibility mode with cache busting
  • better ReCaptcha integration with ajax and with cookies
  • compatibility: full page protection with divi builder
  • more reliable way to get valid response via ajax
  • mobile-friendly cache-busting after authentication


  • added compatibility mode for forcing reload
  • compatibility fix Elementor full page protection
  • compatibility fix WpBakery Pagebuilder full page protection
  • re-added error message in Customizer
  • improved german translation

  • fixed captcha loading while not in use

  • fixed wrong redirection after activation
  • fixed wrong object call for elementor users.


  • fixed captcha loading while not in use
  • fixed wrong redirection after activation
  • fixed wrong object call for elementor users.


  • major release
  • new admin UI and simplfied settings
  • password protection for pages, posts and products
  • new captcha solution with canvas objects
  • new Google ReCaptcha v3 integration
  • removed requirements for PHP sessions for better compatibility
  • removed old Google API vendor for better compatibility
  • refactored the entire shortcode and submit solution
  • ajax-based submit and validation – no page reload required anymore
  • fixed cookie solution for captcha, ReCaptcha
  • easier template function is_valid() for complete checks of all parameters
  • fixed shortcode parameters for headline and id
  • better uninstall cleanup
  • intrated metabox for setting Passster settings for complete pages

  • cookie for passwords conditional function fixed
  • introduced API parameter to elementor and beaver builder
  • fixed notice if api not available in helper methods


  • WPBakery Page Builder row protection with correct default values
  • new helper class for cookies
  • api parameter possibility to add external apis


  • Another VC protection row fix..
  • compatibility WPBakery 6.0.5


  • VC row protection fix
  • new partly parameter
  • cookie set fix and conditional function to check for
  • new type hint solution (better jQuery compatibility)
  • is_cookie_valid check for all password related protection types
  • admin css fixes with prefix


  • Password Lists fix for all page builder
  • prevent autoload error if free and premium version installed
  • customizer as default values for page builder options
  • placeholder now configurable in the customizer


  • fixed captcha notice
  • fixed rows shortcode for WPBakery Pagebuilder
  • more efficient notice handling in admin area


  • adding the “hide” parameter to hide forms if set and multiple forms used
  • compatibility AAM plugin fix for multiple user roles
  • captcha is now a free addon – lower php version needed for basic password usage
  • check_atts method now working correctly
  • WPBakery Pagebuilder addon fix (free)
  • WPBakery Pagebuilder addon protect rows (only pro)
  • add message for captcha usage
  • new (and working) solution for show passwords before submitting

  • new AMP support with cookies
  • Fixed delete error notice for passster_lists function not exists
  • introduced new helper function for AMP set_amp_headers()
  • drop db table for sessions if full uninstall option set
  • customizer option to show password while typing

  • fixed amp notice
  • fixed backend_admin_notice error
  • fixed customizer for themify ultra theme

  • PS_List collision fix

  • autoload backupwp collision fix

  • SVN fix for missing files
  • cookies for conditional functions

  • pagebuilder path fix
  • admin amp option fix


  • security patch freemius
  • add cookie option for multiple passwords
  • add pagebuilder addons in free version
  • fix php notices for php 7 support
  • remove OptionsHandler class for support older php versions
  • add password lists (admin + shortcode)
  • update translation files
  • added AMP support for all protection types
  • improve default values after Installation

  • Fix PHP 5.6 upgrader problems
  • Moved autoloader up so database upgrade is handeled correctly


  • PHP 5.6 compatibility
  • function naming fixes
  • optimize session handler class


  • introduce conditional functions for template usage
  • completely remove the autofocus
  • fixes save settings for user_toggle option
  • updates the session handling for captcha to PHP 7.2 compatibility
  • prevents autofill for safari, chrome and webkit supported browsers


  • includes fixes for beaver builder module support


  • Support Release
  • Fixed multiple passwords runtime
  • add customizer notice on Installation
  • improved german translation
  • add an seprate atts function for more readable code
  • add new users addon


  • Support Release
  • Add auth parameter for multiple shortcodes per page
  • Fixed for error messages
  • Fixed wp_enqueue_styles for windows servers
  • Fixed php notice for captcha options


  • Support Release
  • fixed problems with WP Sessions table and Database Handler
  • fixed License Activation
  • Add option for autofocus
  • fixed helper for addon activation


  • Support Release
  • Major improvements for captcha
  • set width and height for captcha
  • integrate wp-sessions-manager for session handling via database
  • adding page builder support for elementor, WPBakery Pagebuilder and beaver builder (pro only)
  • fix one pager bug with passster forms


  • Support Release
  • Add placeholder and button label per shortcode
  • Fix option set issues for captcha
  • get rid of HTTP API and all external calls and replace with object cache


  • Support Release
  • Fixing PHP notice for addons
  • replace_file_get_contents() with WP HTTP API


  • new admin ui
  • captcha is back!
  • cache-compatible cookie solution
  • design modifications via customizer
  • cross-browser-compatible forms
  • shortcode generator
  • password generation with newset bcrypt standards
  • password generator
  • fix several bugs like instructions text, translations, php errors


  • under new development
  • compatibilty with WordPress 4.9+
  • clean up and restructure whole plugin
  • remove deprecated solutions for ajax and captcha
  • removed date based selection of cookie expires


  • Setting “Password Field Placeholder” now accessible through “Settings -> Passster -> Password/CAPTCHA Field”


  • Form and CAPTCHA instructions moved to outside the form.
  • content_protector_unlocked_content filter bug in AJAX mode fixed.
  • CSS for div.content-protector-form-instructions fixed.
  • New Setting “CAPTCHA Case Insensitive” – to allow users to enter CAPTCHAs w/o case-sensitivity.
  • New action content_protector_ajax_support – for loading any extra files needed to support your protected content in AJAX mode.

  • Fixed bug crashing content_protector_unlocked_content filter.
  • Full AJAX support for [caption] built-in shortcode.


  • Full AJAX support for [embed], [audio], and [video] built-in shortcodes.
  • Added full support for [playlist] and [gallery] built-in shortcodes.
  • Fixed Encrypted Passwords Storage setting message bug.
  • content_protector_content filter now called content_protector_unlocked_content.
  • content_protector_unlocked_content filter can now be customized from the Settings -> General tab.
  • the_content filter now applied to form and CAPTCHA instructions.


  • Partial AJAX support for [embed], [audio], and [video] built-in shortcodes. (experimental)
  • Fixed AJAX error from code refactoring


  • Displaying Form CSS on unlocked content is now a user option (on the Form CSS tab).
  • When saving settings, the Settings page will now remember which tab you were on and load it automatically,
  • Fixed potential cookie expiry bug for sessions meant to last until the browser closes (expiry time set explicitly to ‘0’).
  • Improved error checking for conflicting settings.
  • Some code refactoring.


  • Fixed output buffering bug for access form introduced in 2.6.1.


  • Fixed AJAX security nonce bugs.


  • jQuery UI theme updated to 1.11.4

  • New setting to manage encrypted passwords transient storage.
  • New settings for Password/CAPTCHA Fields character lengths.
  • Improved option initialization and cleanup routines.
  • content-protector-ajax.js now loads in the footer.
  • WPML/Polylang compatibility (beta).
  • New partial translation into Serbian (Latin); thanks to Andrijana Nikolic from WebHostingGeeks (Novi parcijalni prevod na Srpski ( latinski ); Hvala Andrijana Nikolic iz WebHostingGeeks)


  • Skipped


  • Skipped


  • Settings admin page now limited to users with manage_options permission (i.e., admin users only).
  • Fixed bug where when using AJAX and CAPTCHA together, CAPTCHA image didn’t reload on incorrect password.
  • New settings: use either a text or password field for entering passwords/CAPTCHAs, and set placeholder text for those fields.
  • Added autocomplete="off" to the access form.
  • Streamlined i18n for date/time pickers (Use values available in WordPress settings and $wp_locale when available, combined *-i18n.js files into one).


  • Fixed AJAX bug where shortcode couldn’t be found if already enclosed in another shortcode.
  • Clarified error message if AJAX method cannot find shortcode.
  • Changed calls from die() to wp_die().


  • Removed content-protector-admin-tinymce.js (No need anymore; required JS variables now hooked directly into editor). Fixes incompatibility with OptimizePress.


  • Added custom filter content_protector_content to emulate apply_filter( 'the_content', ... ) functionality for form and CAPTCHA instructions.


  • Rich text editors for form and CAPTCHA instructions.
  • NEW Template/Conditional Tag: content_protector_is_logged_in() (See Usage for details).
  • Performance improvements via Transients API.


  • New CAPTCHA feature! Check out the CAPTCHA tab on Settings -> Content Protector for details.
  • Improved i18n.
  • Various minor bug fixes.


  • Dashicons support for WP 3.8 + added. Support for old-style icons in Admin/TinyMCE is deprecated.
  • Unified dashicons among all of my plugins.


  • Added “Display Success Message” option.


  • Added “Shared Authorization” feature.
  • Renamed “Password Settings” to “General Settings”.


  • Added support for Contact Form 7 when using AJAX.


  • Fixed label repetition on “Cookie expires after” drop-down menu.


  • Various CSS settings now controllable from the admin panel.
  • Palettes on Settings color controls are now loaded from colors read from the active Theme’s stylesheet. This
    should help in choosing colors that fit in with the active Theme.
  • Spinner image now preloaded.
  • Some language strings changed.


  • AJAX loading message now customizable.


  • Added required images for jQuery UI theme.
  • Fixed some i18n strings.


  • Initial release.