By default Registered users on your Joomla website can see all modules and menus that are assigned to the Access Level of Public and Registered. So it becomes a little tricky if you want to show a subset of modules or menus to only registered users and a different subset to non registered users. Below I will show you how to do this. High level of what needs to be done:
Create a New User Group in User Manager
Create a New ACL Group in User Manager
Edit the Public ACL Group in User Manager
Edit User Manager Options
Change Access Levels in Menus and Modules
For example I want a new user group named “Guest” which is equivalent to the non registered users on my site to see x modules and x menus. The steps are below:
1. Create a New User Group in User Manager
You will need to create a new user group since Public Group is the parent group to Registered. Registered users will see Registered+ Public. If you create a new user group under Public, Registered users will not see it.
Login to your Joomla 1.7 Administrator panel
Click on Users, Groups, Add New Group
Under User Group Details, enter the follow values:
Group Title = Guest
Group Parent = Public
Click on Save & Close
2. Create a New Access Group in User Manager
The new Guest user group will need to have it’s own ACL so you can assign modules and menus to it. This ACL will only have access to itself.
Click on Users, Access Levels, Add New Access Level
In Level Details, enter in the follow values:
Level Title = Guest
Under User Groups Having Viewing Access, Select only the following:
Use the checkbox to select = Guest
Click on Save & Close
3. Edit the Public Access Group in User Manager
Since your Joomla website has been created with many modules and menus already that have Public as the assigned access, you must now allow the Guest group to view all modules and menus with access to Public.
Click on Users, Access Levels
Click and edit the Public ACL
Under the User Groups Having Viewing Access, also use the check to select:
Guest
Click on Save & Close
4. Edit User Manager Options
Now in the user manager there is a group defined just for non registered users and you must change this to the new group you created in step 1.
Click on Users, User Manager
Click on the Options button on the right side
In the Users Configuration, select the Component tab and set the following values:
Guest User Group = Guest
Click on Save & Close
5. Change Access Levels in Menus and Modules in Module Manager
Now you can go to your Extensions Module Manager and configure your modules as required. Select the modules that you want to be visible to guests only and change the access to Guest. Menus are also configured in the Module manager so you can do the same with the Menus. For example I will change the access for “Who’s Online” to be visible only by Guests/Non registered users:
Click on Extensions, Module Manager
Search for and edit “Who’s Online”
Under Details, set the following value:
Access = Guest
Click on Save & Close
So that’s all that is required to prevent your registered users from seeing modules that are for Guests only, but you will also need to go through all existing modules on your Joomla website that you want this applied to. Repeat step 5 for all modules you want to be displayed to Guests only.
Schedule a
Free Consultation
Sometimes a relationship needs a little nudge to help it grow.
Tell us a few things about yourself and we will show you a lot more about us.