drupal 7 – Agregar campos adicionales al formulario de contacto del sitio

Pregunta:

Esto me parece extrañamente difícil. Lo que pensé sería solo un caso de agregar campos adicionales un poco como agregar campos a los tipos de contenido. Pero no. No puedo ubicar ninguna instalación para agregar un campo de número de teléfono al formulario de contacto. ¿Alguien lo sabe?

Respuesta:

Esperar que los campos de los formularios se configuren como tipos de contenido es una generalización excesiva. Los tipos de contenido son para el contenido (texto, imagen, etc.) del sitio web y, más específicamente, en Drupal, para los nodos (el contenido principal en Drupal). Usando el módulo de IU de campo y campo, uno puede agregar campos fácilmente al tipo de contenido usando una IU web. Excepto en algunos casos específicos, un formulario no es parte del contenido de un sitio web, sino más bien una forma de que los usuarios agreguen y editen información, a veces contenido y otras no.

Para personalizar (es decir, modificar) un formulario en Drupal, la forma habitual es crear un módulo personalizado que implemente el hook hook_form_FORM_ID_alter . De esta manera, puede agregar elementos de formulario a formularios existentes proporcionados por otros módulos. Para usar la información de los campos agregados al formulario de contacto de esta manera, también necesitará modificar el correo enviado usando una implementación de hook_mail_alter () . La siguiente guía lo guía a través de ambos pasos en Drupal 7. (Tenga en cuenta también este comentario )

Una solución sin código es utilizar el módulo Webform que proporciona un tipo de contenido de formulario y le permite agregar formularios como contenido a su sitio web. Estos formularios se pueden configurar a través de una interfaz de usuario web. Se pueden configurar varios pasos de procesamiento para la información enviada a través de estos formularios. Uno de ellos es el envío de correo electrónico. Usarlo para un formulario de contacto personalizado es un caso de uso común. Webform viene con sus propios conceptos y puntos de extensión. Si bien puede resultar una solución más fácil y rápida para formularios simples de una sola vez, también puede revelar que es demasiado grande y complejo de personalizar una vez que se ha alcanzado un determinado umbral de características. El costo de agregar funciones adicionales a un formulario web puede superar la ganancia de evitar escribir un módulo personalizado en primer lugar.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım