I recently built a site using Genesis and Advanced Custom Fields. I’ve done this before so it was fairly straightforward. But on this site, the client wanted the pages with the Custom Fields to be password protected using WordPress’ built in password protection feature. Much to my surprise, on the password protected pages, the main content was hidden, but the Custom Fields were not. The following post explains how to hide WordPress Customs Fields on password protected Genesis pages.
Hiding WordPress Customs Fields on password protected Genesis Pages is fairly easy if you have a code example.

Adding the Password Required Code to a Regular WordPress Template
if ( ! post_password_required() ) { // Enter code to fetch and print Custom Fields here }
In the code above, you need to wrap the custom field code in the password required if statement. If you are using a regular WordPress template instead of a Genesis template, the above code will work.
Adding the Password Required Code to a Genesis WordPress Template
If you are using a Genesis template, you need to wrap your custom field code in a function so it can be added to a Genesis structural action hook. And you also need to wrap your custom field function code in the password required conditional statement.
Below is a simplified example for Genesis
Below is a detailed example for Genesis
Heikki Lahtela says
Thank you for this!
You can also put the password check on add_action() to make the code reusable:
if ( ! post_password_required() ) {
add_action( ‘genesis_entry_content’, ‘wnd_download’);
}