| Indice del artículo |
|---|
| Cómo hacer un botón dinámico Login/Logout |
| Usar Php con CSS |
| Usar el módulo 'MetaMod' |
| Usar 2 menús con diferente posición de módulo |
| Usar una extensión ACL (Access Control List) |
Resumen: En este tutorial aprenderemos, paso a paso, 3 maneras posibles de hacer un botón dinámico Login/Logout, y analizaremos una cuarta:
- Usar Php con CSS
- Usar el módulo 'MetaMod'
- Usar 2 menús reemplazables con diferentes posiciones de módulo
- Usar una extensión añadida ACL (Access Control List)
Por "botón dinámico Login/Logout" entendemos un botón que ponga "Login", o similar, antes de conectarse, y "Logout", o similar, después de hacerlo.
El resultado final puede observarse en esta misma web, pulsando el botón 'Login' del área superior derecha (para comprobar su funcionamiento, previamente tendrás que registrarte como usuario, usando para ello el botón vecino de 'Registro').
Observaciones previas
En Joomla 1.5 se echa de menos una función que permita introducir un botón dinámico para Conectarse/Desconectarse... Es decir, un elemento de menú 'Conectarse' o 'Login' que, al clickar en él, tras conectarnos, sustituya su título por 'Desconectarse' o 'Logout, permitiendo cerrar la sesión (tengo entendido que el 1.6 va a cambiar esto).
Investigando sobre ello, encontré en el foro de Joomla.org el tema "Dynamic login/logout menu item, how?" ("Elemento de menú Login/Logout dinámico, ¿cómo...?"), donde se exponen 2 maneras diferentes de conseguir este objetivo... También aquí encontré un enlace a un tutorial con una tercera manera. Todo ello en inglés.
Recientemente, sin embargo, he encontrado una manera más sencilla de hacerlo, en dart-creations.com, que es la que expongo en primer lugar.
El presente tutorial se basa en las citadas fuentes, complementadas con el examen personal de todos los métodos propuestos. Dado que éste es un tutorial en español, hemos presupuesto que estás trabajando con el panel de control del administrador en español, por lo que hemos adaptado las referencias inglesas al contexto español... Si trabajas sobre el panel de control en inglés, es más lógico que recurras directamente a las fuentes originales (excepto si estás acostumbrado a usar indistintamente ambos paneles, o para algunas advertencias sobre obstáculos que puedes encontrarte en el camino).
Las expresiones entre corchetes [y en cursiva], dentro del contexto de una traducción más o menos literal, son comentarios míos.
Observar, por último, que en realidad no existe en Joomla un solo botón dinámico que muestre un texto u otro según el usuario esté o no conectado... Lo que hay son dos botones, uno visible cuando el otro está oculto y viceversa, de manera que parecen el mismo.








Saludos y gracias
Para echarte una mano, necesitaría me enviaras enlace a tu página, así podría analizarla.
Saludos,
Nacho
Administrador de Mundojoomla
Ahora tengo otra pregunta, quien sabe si alguno tiene la solucion tambien para esto:
Ya lo he escrito en el forum:
http://forum.joomla.org/viewtopic.php?f=500&t=327522&p=1932763#p1932763
Trato de explicarlo en español:
Tengo un sitio dividido en dos secciones, con template proprio y cada uno con su menu principal.
El usuario unregistered puede ver paginas de las dos secciones.
usuarios registrados ven paginas suplementarias de las dos secciones.
Pasando de una seccion a otra todo funciona perfectamente, sea como usuario registrado, sea como no registrado. El menu cambia en base a la seccion que se esta leyendo.
Pues correctamente he dado a los menues los "Assignments" segun necesidad.
Pero cuando se visualizan las paginas "automaticas" de Joomla
- logout desde el form (curiosamente NO sucede ahora con el boton hecho como dicho arriba)
- Forgot your passport
- Registrarse, etc
DESAPARECE el menu principal, es como que no sabe de que tiene que mostrarlo.Efectivamente cuando en los assignments del modulo menu indicado lo dejo visualizar a "todos" entonces funciona correctamente. Pero como dicen en el forum ingles, en Joomla 1.5 ha perdido la relacion con el ID...
Alguno tiene idea de como hacerlo funcionar correctamente?
Verozeta