Добавить настраиваемое поле в контактную форму Magento 2?


13

Я использую magento 2, и я хотел бы добавить настраиваемое поле в форму контакта, как я смогу это сделать?

Ответы:


36

Сначала откройте form.phtmlфайл, расположенный в вашей теме.

/magento_root/app/design/frontend/VENDER_NAME/YOUR_THEME/Magento_Contact/templates/form.phtml , а затем добавьте поле темы в эту форму контакта:

<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>

Добавьте вышеуказанное поле в форму.

Что касается Magento, то все равно, какие поля мы добавим в эту форму. Он написан таким образом, что принимает все поля, отправленные для обработки, и отправляет их в форму транзакционной электронной почты, которую вы создаете. Теперь перейдите в раздел МАРКЕТИНГ> Связь> Шаблоны электронной почты в разделе администрирования Magento. Нажмите « Добавить новый шаблон » и в раскрывающемся списке « Шаблон » выберите « Форма контакта », затем « Загрузить шаблон ». Под содержимым шаблона вы увидите:

{{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}}

Добавьте новое поле перед именем: {{trans "Name:% name" name = $ data.name}}, чтобы теперь оно выглядело следующим образом:

{{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}}

Введите новое имя в поле «Имя шаблона », чтобы сохранить новый шаблон, и нажмите « Сохранить шаблон ». Теперь нам нужно указать Magento использовать этот новый шаблон для формы контактов. Перейдите в STORES -> Настройки -> Конфигурация -> Общие -> Контакты и выберите « Контакты ». В разделе « Параметры электронной почты » выберите новый шаблон в раскрывающемся списке «Параметры электронной почты» -> «Шаблон электронной почты». Нажмите « Сохранить конфигурацию ».


1
Это правильно, вместо создания шаблона для электронной почты в базе данных я бы переопределил шаблон в своей теме (/magento_root/app/design/frontend/VENDER_NAME/YOUR_THEME/Magento_Contact/email/submittted_form.html). Это просто личный вкус;)
Stijn Duynslaeger - Echron
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.