ProPhoto is one of the best WordPress themes for photographers and creatives. With a simple drag and drop interface, ProPhoto gives you the ability to create a perfect custom responsive website for your business.
When it comes to password protection, only the content of the post/page will be protected by default. The ProPhoto layout (or template) applied to that post/page will still be visible. Fortunately, it’s possible to protect the whole ProPhoto’s layout/template with the Password Protect WordPress plugin.
In order to block all of the ProPhoto modules with a password form, you need to add the following code snippet into the ProPhoto (child) theme’s functions.php file.
add_action('pp_render_content', 'ppw_check_password_protection', -100 ); add_action('wp', 'ppw_prevent_caching' ); // Prevent password form from being cached with ProPhoto built-in function function ppw_prevent_caching() { global $post; if ( ! $post ) { return; } if ( ! class_exists( 'PPW_Password_Services' ) ) { return; } $ppwp_password_services = new PPW_Password_Services(); if ( ! $ppwp_password_services->is_protected_content( $post->ID ) ) { return; } defined( 'DONOTCACHEPAGE' ) || define( 'DONOTCACHEPAGE', true ); if ( ! headers_sent() ) { header( 'Cache-Control: private' ); } } function ppw_check_password_protection() { if ( ! post_password_required() ) { return; } $form = get_the_password_form(); echo $form; do_action( 'get_footer' ); exit(); }
Please note that ProPhoto theme comes with a built-in page caching function which helps to improve the speed and performance of your website. As a result, once protected, you need to manually purge cache for the password form to be shown.