Esperar que los campos de formularios se configuren como tipos de contenido es una generalización excesiva. Los tipos de contenido son para contenido (texto, imagen, etc.) del sitio web, y más específicamente, en Drupal, para nodos (la pieza principal de contenido en Drupal). Usando el módulo Field y Field UI, uno puede agregar fácilmente campos al tipo de contenido usando una Web UI. Excepto en algunos casos específicos, un formulario no es parte del contenido de un sitio web, sino más bien una forma para que los usuarios agreguen y editen información, a veces contenido y a veces no.
Para personalizar (es decir, alterar) un formulario en Drupal, la forma habitual es crear un módulo personalizado que implemente el enlace . De esta manera, puede agregar elementos de formulario a formularios existentes proporcionados por otros módulos. Para utilizar la información de los campos agregados al formulario de contacto de esta manera, también deberá modificar el correo enviado utilizando 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 )hook_form_FORM_ID_alter
Una solución sin código es usar 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 son configurables a través de una IU 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 correos electrónicos. 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 alcanza 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.