Как добавить контактную форму на страницу в Magento
Довольно часто при разработке интернет-магазина на Magento нужно выводить форму обратной связи на произвольной странице. В этой краткой статье мы рассмотрим практическое решение данного вопроса.
Чтобы выводить форму для обратной связи практически на любой странице в магазине, у вас есть два возможных решения. В первом случае вам нужно добавить специальный код в статическую страницу, которая была создана из панели администрирования (через меню CMS -> Pages). Во втором случае вам нужно вставить специальный код вызова формы в файл шаблона (в формате .phtml
).
- Добавление формы через CMS страницу
Сначала зайдите в панель администрирования Magento, а потом перейдите в меню CMS -> Страницы (CMS -> Pages).
Откройте для редактирования нужную страницу и добавьте HTML-код в режиме редактора (не в режиме визуального редактора) на вкладке «Содержимое» (Content). Пример кода для вставки:
{{block type="core/template" name="contactForm" form_action="{{store direct_url='contacts'}}/index/post" template="contacts/form.phtml"}}
Если вам нужно вставить свою собственную форму (а не дефолтную), тогда вам нужно сначала создать свой шаблон с формой, а потом вызвать этот шаблон из страницы.
Шаблон контактной формы можно определить в своей теме. Создайте его, например, здесь:
app\design\frontend\[ПАКЕТ]\[ТЕМА]\template\custom\vasha-forma.phtml <form action="some/action/" name="form-name" id="form-id" > <!-- здесь вставьте HTML-код формы --> </form>
После этого вы можете вызывать свою форму из CMS страницы:
{{block type="core/template" name="form-name" template="custom/vasha-forma.phtml"}}
- Добавление формы обратной связи через .phtml шаблон
Если у вас уже есть шаблон с формой обратной связи, вы можете вызвать его из другого шаблона с помощью простого кода:
echo $this->getLayout()->createBlock('core/template')->setFormAction($this->getUrl('contacts/index/post', array('_secure'=>true)))->setTemplate('custom/vasha-forma.phtml')->toHtml();
Измените путь и название шаблона, если нужно, и у вас будет готовая контактная форма.
Последние посты
Чарлз Дарвин
Выживает не самый сильный и не самый умный, а тот, кто лучше всех приспосабливается к…
Что такое тег canvas в HTML5 и зачем он нужен?
Элемент <canvas> появился только в HTML5 и используется для динамического рисования графики на веб-странице с…
Что включает в себя очистка ноутбука?
Ноутбук – это не только удобный и функциональный гаджет, но и довольно деликатное устройство, требующее…
Аль Пачино
Никогда никому ничего не объясняйте. Все равно каждый поймет так, как ему выгодно Аль Пачино…