Añadir campo personalizado al formulario de contacto Magento 2?


13

Estoy usando magento 2 y me gustaría agregar un campo personalizado al formulario de contacto, ¿cómo podría hacerlo?

Respuestas:


36

Primero, abra el form.phtmlarchivo ubicado en su tema.

/magento_root/app/design/frontend/VENDER_NAME/YOUR_THEME/Magento_Contact/templates/form.phtml , luego agregue el campo de asunto a este formulario de contacto:

<div class="field subject required">
    <label class="label" for="subject"><span><?php /* @escapeNotVerified */ echo __('Subject') ?></span></label>
    <div class="control">
        <input name="subject" id="subject" title="<?php /* @escapeNotVerified */ echo __('Subject') ?>" value="" class="input-text" type="text" data-validate="{required:true}"/>
    </div>
</div>

Agregue el campo anterior en el formulario.

En lo que respecta a Magento, no le importa qué campos agreguemos a este formulario. Está escrito de tal manera que acepta todo el campo publicado para su procesamiento y lo envía al formulario de correo electrónico transaccional que usted crea. Ahora, vaya a MARKETING> Comunicación> Plantillas de correo electrónico en la sección Administrador de Magento. Haga clic en " Agregar nueva plantilla " y en el cuadro desplegable " Plantilla " seleccione " Formulario de contacto " y luego " Cargar plantilla ". En el contenido de la plantilla verá:

{{trans "Name: %name" name=$data.name}}
{{trans "Email: %email" email=$data.email}}
{{trans "Phone Number: %telephone" telephone=$data.telephone}}
{{trans "Comment: %comment" comment=$data.comment}}

Agregue su nuevo campo antes de Nombre: {{trans "Nombre:% name" name = $ data.name}} para que ahora se vea así:

{{trans "Subject: %subject" subject=$data.subject}}
{{trans "Name: %name" name=$data.name}}
{{trans "Email: %email" email=$data.email}}
{{trans "Phone Number: %telephone" telephone=$data.telephone}}
{{trans "Comment: %comment" comment=$data.comment}}

Ingrese un nuevo nombre en " Nombre de la plantilla " para guardar su nueva plantilla y haga clic en " Guardar plantilla ". Ahora debemos decirle a Magento que use esta nueva plantilla para el formulario de contacto. Vaya a TIENDAS -> Configuración -> Configuración -> General -> Contactos y seleccione " Contactos ". En " Opciones de correo electrónico ", seleccione su nueva plantilla en el cuadro desplegable "Opciones de correo electrónico" -> "Plantilla de correo electrónico". Haga clic en " Guardar configuración ".


1
Esto es correcto, en lugar de crear la plantilla para el correo electrónico en la base de datos, anularía la plantilla en mi tema (/magento_root/app/design/frontend/VENDER_NAME/YOUR_THEME/Magento_Contact/email/submittted_form.html). Es solo un gusto personal;)
Stijn Duynslaeger - Echron
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.