SERGIOIGLESIAS

Blog sobre Joomla

Cómo crear campos personalizados de usuario en Joomla 4

Tal y como te comentaba la semana pasada, aquí va el artículo sobre cómo crear campos personalizados de usuario en Joomla 4.

Cómo crear campos personalizados de usuario en #Joomla4 #MejorConJoomla Tuitéalo

Antes de meternos en materia, te recomiendo un par de artículos en los que ya he hablado sobre campos personalizados en Joomla y sobre funcionalidades del apartado de usuarios:

Y ahora sí, vamos al lío.

Quizás hayas visto y leído mucho sobre los campos personalizados en Joomla, pero generalmente se habla sobre los campos personalizados de artículos.

Cabe decir que esta funcionalidad o característica la tienes también disponible tanto en Usuarios como en Contactos y que, con unas pocas líneas de código, la puedes integrar en tus propios componentes.

Asi que hoy, te voy a explicar los campos personalizados para ususarios en Joomla 4.

Para explicar esto voy a hacerlo a través de un pequeño ejemplo, que creo es una buena forma de verlo.

Vamos a suponer que para un usuario queremos tener una serie de datos adicionales: información personal (como apellidos y teléfono) e información profesional (empresa, puesto que de desempeña).

Esta información será obligatoria y la pediremos en el registro del usuario.

Antes de seguir con el ejemplo, te muestro cómo sería la página de registro de usuario:

registro usuario

Como puedes ver se trata de una instalación de Joomla 4 con datos de ejemplo, sin ninguna extensión.

Vamos a crear toda la estructura necesaria para nuestro objetivo.

Grupos de campos

Aunque no es obligatorio tener ningún grupo para que los campos funcionen, siempre es recomendable crearlos para tener bien organizados estos campos.

Como en el ejemplo hemos hablado de 2 "bloques" de información, lo mejor será crear estos 2 grupos.

Para ello vamos desde el menú principal del panel de administración a Usuarios > Grupos de campos.

Aquí veremos el listado de los grupos que tengamos creado y las opciones típicas de crear, editar y eliminar.

grupos campos

Aunque en la captura verás que ya los tengo creados, para crear uno es muy sencillo.

Pulsas el botón que se llama "Nuevo" y rellenas el formulario que aparece en la pantalla de creación:

grupos campos crear

Ahora que tenemos creados estos grupos, vamos a crear los campos.

Campos personalizados de usuario en Joomla 4

Para crear los 4 campos que te he comentado que vamos a usar en el ejemplo tendremos que ir a Usuarios > Campos desde el menú principal del panel de administración.

Aquí veremos el listado de los campos que tengamos creados.

campos usuarios

Como ves en la captura, ya tengo creado el de Apellidos. Así que vamos a crear el resto.

Te muestro el de Teléfono puesto que los otros se harán de forma similar (y así puedes practicarlo).

Igual que se hace en los Grupos de campo, pulsamos el botón que se llama "Nuevo".

campos usuarios crear

La captura anterior muestra la pantalla de creación/edición de un campo y te paso a explicar cada uno de los campos que la forman:

  • Título: título del campo. Ej. Teléfono
  • Tipo: seleccionamos el tipo de campo. Ej. Text (lo vamos a tratar como campo de texto, pero podríamos utilizar el tipo de campo específico "phone" si lo tuviéramos instalado - Puedes ver todos los que ofrece Tassos en su Advanced Custom Fields)
  • Nombre: nombre del campo (el que irá dentro del HTML "input"). Ej. Dejamos que se genere automáticamente
  • Etiqueta: etiqueta del campo que aparecerá en la etiqueta HTML "label". Ej. Dejamos que se genere automáticamente
  • Descripción: si queremos añadir una descripción del campo. Ej. Dejamos vacío (podríamos poner que se trata de un teléfono de contacto habitual que puede ser móvil o fijo, por ejemplo).
  • Requerido: si queremos que sea o no obligatorio de rellenar en el formulario. Ej. Marcamos sí
  • Usar solo en subformulario: el campo solo se mostrará en otro capo de tipo "Subform o Subformulario". Ej. Marcamos no
  • Valor predeterminado: si queremos que haya ya un valor predeterminado. Ej. Dejamos vacío (si por ejemplo pidiéramos un teléfono fijo solo de Zamora, podríamos poner aquí ya su prefijo: 980).
  • Filtro: seleccionamos el filtro que tendrá el campo. Ej. Teléfono (es un tipo de filtro específico para solicitar teléfonos, aunque podríamoos dejarlo vacío, o como enteros, por ejemplo).
  • Tamaño máximo (caracteres): el número máximo de caracteres que el usuario puede introducir. Ej. Dejamos vacío
  • Estado: seleccionamos si lo publicamos, despublicamos o enviamos a basura. Ej. Publicado
  • Grupo de campos: seleccionamos al grupo al que pertenecerá. Ej. Información personal (para los otros 2 campos que quedarían habría que seleccionar el otro grupo).
  • Acceso: seleccionamos los grupos que tienen acceso a este campo. Ej. Public (si por ejemplo no queremos que aparezca en el formulario de registro pero sí en la edición de perfil, seleccionamos Registered y ya lo tendríamos).

Y con esto el campo estaría creado.

Pero... quedan un par de cosas a tener en cuenta y que son MUY IMPORTANTES:

  1. Define bien el tipo de campo que vas a utilizar porque una vez lo crees ya no podrás cambiarlo. Esto es importante tener en cuenta porque si, por ejemplo, añadimos el tipo de campo de "Phone" que te comentaba antes y quieres que el campo sea de ese tipo, tendrás que crear uno nuevo y la información que hubieran introducido ya los usuarios, no valdría.
    Eso sí, siempre podrías usar el plugin SIS UserLock que veíamos la semana pasada para obligar a los usuarios ya registrados a rellenarlo si quieren navegar por la web ;-).
  2. Tendrás que dar permisos de edición de campo a los grupos de usuarios que quieras que puedan rellenarlo.

Dar permisos de edición de campo en Joomla 4

Hay que tener en cuenta que los usuarios del grupo "Public" por defecto no pueden editar estos campos.

Para que puedan rellenar estos campos, una vez que crees dicho campo, tendrás que ir a la pestaña de "Permisos" y darle ese permiso:

permisos edicion campo

Como puedes ver en la captura, hay que seleccionar "Permitido" en el campo "Editar valor de campo personalizado".

Si no lo haces, el campo aparecerá en el formulario pero marcado como "disabled" y el usuario no podrá registrarse si lo pones como "Requerido".

Y ahora, te muestro cómo se vería el formulario de registro con los campos y grupos de campos que acabamos de crear:

registro usuario campos

Puedes ver en la captura anterior que en el campo de "Cargo" le he puesto una descripción en el campo correspondiente.


Creo que con esto queda claro cómo crear campos personalizados de usuario en Joomla 4 y cómo funcionan.

Espero que te haya ayudado, te sirva para tus proyectos y que, si te parece bien, lo compartas con otros usuarios ;-)

Cómo crear campos personalizados de usuario en #Joomla4 #MejorConJoomla Tuitéalo

¿Te ha gustado el artículo?

Suscríbete a mi newsletter y recibe contenido exclusivo.
Podrás hacer gratis un Curso de desarrollo de plantillas Joomla.

No hay comentarios

Artículos relacionados

Solicita presupuesto

¿Quieres una página web que funcione?

Contacta conmigo y hablemos de tu proyecto.