Ahhh – I think I understand what you’re getting at.
The WooCommerce shop “page” is not actually a “page” in the WordPress sense of the term. It’s actually an “endpoint”.
The way that WP-Members works in general is to filter content using WP’s the_content
filter hook on content that is singular (i.e. is_singular
).
There are, however, ways to block the WooCommerce shop (as well as other WC endpoints, and the endpoints of other plugins that operate in a similar way).
You can use the WP-Members wpmem_redirect_to_login()
function to redirect the user to the WP-Members login page. To block the WooCommerce shop page, you can do that by hooking to an early action (like pre_get_posts
), check if the user is logged in and if it’s the WC shop page (using is_shop()
), and redirecting if the user is not logged in.
I don’t like to hard-sell upgrades, which is why I explained in the previous paragraph how you can do it without any help from me. But there is a more complete, “cut-and-paste ready” example of this in the WP-Members code snippet library which is available to premium support subscribers. It is also included as one of the many settings available in the WP-Members Advanced Options extension.