How to Restrict Access to Entire WordPress Site
With ProfilePress, you can limit access to your WordPress sites to visitors who are only logged in. Restricted visitors or unauthorized users can be redirected to the login page, a custom page, or you can display a message. A great solution for Intranets or staging sites.
To restrict your entire website to only logged-in users, read on.
Go to ProfilePress>>Settings>>Access and select the Accessible to logged-in users option
Next, you need to redirect users that try to access the site to another page or custom URL. Select the page from the drop-down or provide a custom URL to redirect users that are not logged in.
NB: For this to work, you MUST set a redirect page or custom URL.
You might need to exclude some pages besides the redirect page that will be accessible to everyone. You can select as many as you want here.
In some cases, the homepage might be used as a landing page and need to be accessible to all. ProfilePress allows you to do just that. To activate, just tick the checkbox.