We have an add-on called "Members-Only Content" that restricts access per membership plan to the members' search results page, posts, and other existing and new pages. However, this add-on is not going to hide the homepage.  


This add-on gives you full control over who can access your website’s content mentioned above by requiring designated “members” to log in before being able to view your premium and protected pages.


Some site owners want to make the whole site "Members-Only", meaning that the people who want to access the website will see a login form or signup button if they want to access the site. 


Example: 




In order to accomplish this functionality, a form, a widget and a menu need to be customized. 




Starting the customization 


1. Go to Settings >> General Settings >> Configuration >> Website Status >> Staging Mode. 




2. Go to Toolbox >> Menu Manager >> Find the "Login Page Links" menu and click on Actions >> Clone: 




* If you do not see the "Login Page Links" menu as an option, please let us know and we will enable it on your site. 


3. A new cloned menu will be created. 

To edit the name, please click on "Edit" and then go to Actions >> Edit Menu: 




4. A new pop-up will show up. 

Please edit the menu name and system name.


We recommend adding the following information: 

Menu Name: Login Page Staging Mode

System Name: login_form_buttons_staging_mode

The Menu CSS Class needs to be empty.  


*The System Name cannot contain blank spaces. If more than 2 words need to be added, please use underscores "_" instead.




5. Delete this menu item: "Are You a Local Business <span class="inline-block">List Your Company Now</span>" by clicking on Actions >> Delete:



Deleting this menu item will remove the ability to access the /join page, where they can access the rest of the website. The idea is that they log in before they see any content. 



Once the menu item has been deleted, the new menu should look like this one: 




6. Go to Toolbox >> Form Manager >> Search for "member_login" and click on Actions >> Customize:   




6. Scroll down and replace the name of the menu (Highlighted below) with the new name: "login_form_buttons_staging_mode"




7. Click on Save Changes. 

A new pop-up will appear, add the new Form Name and the form variable name. 

We recommend adding the following information:

Form Nickname: Member - Login Form - Staging Mode 

Form Variable Name: Form Variable Name

The Menu Form Element ID and CSS Class and Form Element Class should be empty.  


*The Form Variable Name cannot contain blank spaces. If more than 2 words need to be added, please use underscores "_" instead.




When the form settings have been saved, the new form will appear at the top of the Form Manager: 




8. Please go to Toolbox >> Widget Manager >> Search for: "Bootstrap Theme - Coming Soon Page", then click on Actions >> customize.


Now it will appear at the top of the Widget Manager page, please click on Edit: 




9. Scroll down to line 44 and update the numbers of the class to "8" and "2", please see the image below.

Then edit the line 57, please add the "Form Variable Name" of the new form created on step 7. 

In this case, we added "member_login_staging_mode" 




10. The last step will be to edit the text labels of the new form. 

In order to see the text labels, please go to the URL of your website: www.yoursite.com and add at the end of the URL the following: /?editmode=1


Example: https://www.YourSite.com/?editmode=1


It will open the edit mode and the form will look like this: 




11. Copy the variable of the text that needs to be edited, (Example highlighted in the image below)




12. Go to Settings >> Text Labels >> At the top right of the text label, paste the variable >> Edit the text and save the changes. 




Do the same with the other variables. 


Now, the people who visit the website will need to sign up or login in order to see the content of the website. 




Visit the Members Only Add-On article if other pages need to be restricted by membership plan.