Este artículo se creó con Joomla 2.5, pero en Joomla 3.9 el procedimiento es el mismo, simplemente puede cambiar el lugar donde están las opciones del backend de Joomla.

 

Cuando queremos que un módulo de joomla solo sea visto para usuarios registrados, no es mucho problema, ya que solo tenemos que seleccionar en el módulo el acceso a registrados, y nadie con un nivel inferior puede acceder al mismo.

Pero, ¿qué pasa cuando un módulo queremos que sean precisamente los usuarios registrados quienes no lo puedan ver?. ESto nos puede pasar, por ejemplo, para poner un módulo de registro de usuarios. Es lógico que quien no esté registrado vea la posibilidad de registrarse, pero quien ya se ha registrado, una vez se ha identificado y abierto su sesión, no tiene sentido que siga viendo la opción de registrarse.


Esto en joomla 1.5 no era posible, al menos no tan sencillo, pero en jomla 2.5 si es posible, y creo que en el 1.7 también lo era. Vamos a ver cómo hacerlo, que son unos pocos pasos muy sencillos.

Para empezar, dentro de la página de administración de nuestro joomla, y en el menú usuarios, nos vamos a "grupos"


Una vez en grupos, veremos algo similar ala imagen de abajo. Vemos que un grupo es "publico", que es cuando tiene acceso todo el mundo. Otro grupo remarcado en un cuadro es "registrado", y como veis, está más a la derecha que el grupo público. Esto quiere decir que el grupo registrado es un grupo dentro del grupo público. Por eso, todo lo que pueden ver los usuarios del grupo público, también lo pueden ver los del grupo registrado. Lo que necesitamos es crear un nuevo grupo, así que damos al icono "Nuevo" como indica la flecha de la imagen de debajo.


Le damos un nombre, por ejemplo "Invitado", como en la imagen de debajo, dejando como grupo padre el grupo "publico", y le damos al botón "Guardar y cerrar".


Con esto hemos creado un grupo del mismo nivel que el grupo registrado. También es un "subgrupo" del grupo público. Bueno, ya queda poquito para que veáis el por qué de todo ésto.


Ahora nos vamos al apartado de niveles de acceso, como indica la imagen de debajo.


Y en los niveles de acceso, le damos al botón "Nuevo" para crear un nuevo nivel.


A este nivel le llamaremos como queramos, por ejemplo, como en la imagen de debajo, "Invitado no registrado". Y marcaremos SOLO la casilla "Invitado" de los grupos de acceso que tenemos ya creados. Le damos a "guardar y cerrar" para salir y que los cambios surjan efecto.


Ahora solo nos queda irnos a las opciones generales de este tema, que los haremos pinchando en el botón de opciones.


Una vez dentro, en la pestaña "Configuración del componente", cambiaremos el grupo de usuarios invitados que estaba en "publico" a "Invitado". ESD decir, ahora los usuarios no registrados, no serán del grupo "publico", sino del grupo "invitado".  ¿Y para qué todo esto?. Pues porque el problema era que el grupo "registrado" está dentro del grupo "publico", y por lo tanto, una persona registrada tiene acceso a todo lo que tiene acceso una persona del grupo "·publico". Pero ahora, hay otro grupo PARALELO al grupo "registrado", y nos servirá para nuestro fin, que no es otro que el que haya cosas solo visibles a quien no está registrado.


Todos los módulos que tengan definido como acceso al grupo "publico", seguirán siendo visibles para todo le mundo, registrados y no registrados. Pero ahora, en cada módulo, cuando despleguemos las opciones de acceso, tendremos una más, que es el grupo de "Invitado no registrado".

Todos aquellos módulos que tengan esta opción, serán invisibles para usuarios registrados. Imagino que queda claro que cuando hablo de usuarios registrados, me refiero a una vez se hayan identificado introduciendo su nombre de usuario y su contraseña. Sería absurdo que, por ejemplo, un módulo que invitase a registrarte en la Web, o a restablecer tu contraseña, esté visible a quien ya se ha identificado e iniciado su sesión, con lo cual ya está registrado y sabe su contraseña, o no hubiese podido abrir la sesión. Bueno, puede parecer un poco lioso, aunque he intentado explicarlo lo más clarito posible, pero en realidad son pocos pasos que nos pueden servir de mucho.