php - register - Permitir a los usuarios seleccionar un grupo de usuarios desde el formulario de inicio de sesiĆ³n personalizado de Joomla
joomla register form (2)
Estoy desarrollando un sitio web en Joomla 3.0. Lo que intento hacer es crear un formulario de inicio de sesión personalizado. La razón por la que quiero hacer eso es permitirles a los usuarios seleccionar el grupo de usuarios en el que desean colocarse mientras se están registrando. Entonces necesito crear un cuadro desplegable en el formulario de inicio de sesión. Desde este cuadro desplegable, los usuarios podrían elegir el grupo de usuarios deseado. Hasta ahora he intentado utilizar varios complementos y extensiones, pero el problema es que no se pueden personalizar de la manera que yo quiero. Entonces, por favor, si tienes alguna idea de cómo lograr el resultado que estoy buscando, compártelo conmigo. Creo que tendré que intentar codificarlo yo mismo, pero incluso en este caso necesitaría mucha ayuda. Darme consejos y citar buenos tutoriales también sería útil.
Gracias
PD: si tienes solución a mi problema para otra versión de Joomla, por favor, compártelo conmigo.
La mejor solución para agregar un campo personalizado durante el proceso de registro del usuario probablemente sea usar un complemento.
Puede utilizar un complemento comercial que está disponible llamado Registro de múltiples perfiles (demostración aquí ), que parece estar haciendo exactamente lo que desea (nunca lo he probado).
Esto le costará algo de dinero y le ahorrará algo de tiempo, pero diseñaré la alternativa, que es desarrollar su propio complemento.
Por suerte para ti, hay un excelente tutorial aquí , que en realidad es un capítulo de un libro llamado Joomla! Programación (especialmente la página 5 del tutorial).
Escribir un complemento lleva tiempo y no voy a repasar todos los detalles. Los pasos principales incluyen:
- Cree un archivo de configuración de complemento, que incluirá una lista de grupos para seleccionar (elemento de formulario). Aquí es donde usted (o cualquier persona que use el complemento) seleccionará los grupos disponibles para el registro (los grupos se pueden buscar a través de
UsersHelper::getGroups()
). - Aumente el formulario de registro con un cuadro de selección que incluya los grupos de usuarios deseados desde la configuración del complemento. Esto se puede hacer creando una anulación de diseño para su plantilla (
templates/<your template>/html/com_users/registration/approval.php
) o inyectándola en el documento en alguna fase del evento de renderización mediante el complemento, que es probablemente sea el método preferido si este complemento debe ser portátil. - Establezca el grupo deseado mediante el complemento procesando los datos del formulario y anulando el parámetro de datos de
groups
en el eventoonUserBeforeSave
.
Probablemente el complemento UsergroupSelector puede ayudarlo a lograr esto. Este complemento agrega un campo en el formulario de registro. En caso de que no desee utilizar html predeterminado, deberá agregar un cuadro de selección html en su plantilla sobrescrita.