Como a maioria dos modelos, este arquivo começa com o snipplet page-header.tpl para mostrar o breadcrumbs e o título, que nesse caso é "Contato".
{% embed "snipplets/page-header.tpl" %} {% block page_header_text %}{{ "Contacto" | translate }}{% endblock page_header_text %} {% endembed %}
A estrutura principal do corpo no layout Base é centralizada. Primeiro chamamos os links de contato- e-mail, telefone, whatsapp, endereço - através do snipplet contact-link.tpl:
{% include "snipplets/contact-links.tpl" with {'columns': false} %}
O formulário de contato conta com duas modalidades:
- Contato, acessando a partir do link no menu ou através da url (basetheme.mitiendanube.com/contacto)
Neste caso, o formulário de contato é simples, com os campos de nome, e-mail, telefone e mensagem. - Contato por produto, acessando de um produto sem estoque, clicando em “Consultar” ou “Consultar preço”
Quando acessamos a página de contato dessa maneira, aparece uma mensagem “Você está consultando para o produto a seguir” antes do formulário: e o nome, link e imagem do produto em questão.
O formulário é o mesmo, mas o administrador da loja recebe a mensagem com o produto para o qual a consulta é feita.
Antes da incorporação do formulário, temos as mensagens que notificam o usuário se a mensagem de envio foi bem sucedida ou se houve um problema.
{% if product %} <div> <p>{{ "Usted está consultando por el siguiente producto:" | translate }} </br> {{ product.name | a_tag(product.url) }}</p> <img src="{{ product.featured_image | product_image_url('thumb') }}" title="{{ product.name }}" alt="{{ product.name }}" /> </div> {% endif %} {% if contact %} {% if contact.success %} <div class="alert alert-success">{{ "¡Gracias por contactarnos! Vamos a responderte apenas veamos tu mensaje." | translate }}</div> {% else %} <div class="alert alert-danger">{{ "Necesitamos tu nombre y un email para poder responderte." | translate }}</div> {% endif %} {% endif %} {% embed "snipplets/forms/form.tpl" with{form_id: 'contact-form', form_custom_class: 'js-winnie-pooh-form', form_action: '/winnie-pooh', submit_name: 'contact', submit_text: 'Enviar' | translate } %} {% block form_body %} {# Hidden inputs used to send attributes #} <div class="winnie-pooh hidden"> <label for="winnie-pooh">{{ "No completar este campo" | translate }}:</label> <input type="text" id="winnie-pooh" name="winnie-pooh"> </div> <input type="hidden" value="{{ product.id }}" name="product"/> <input type="hidden" name="type" value="contact" /> {# Name input #} {% embed "snipplets/forms/form-input.tpl" with{input_for: 'name', type_text: true, input_name: 'name', input_id: 'name', input_label_text: 'Nombre' | translate } %} {% endembed %} {# Email input #} {% embed "snipplets/forms/form-input.tpl" with{input_for: 'email', type_email: true, input_name: 'email', input_id: 'email', input_label_text: 'Email' | translate } %} {% endembed %} {# Phone input #} {% embed "snipplets/forms/form-input.tpl" with{input_for: 'phone', type_tel: true, input_name: 'phone', input_id: 'phone', input_label_text: 'Teléfono' | translate } %} {% endembed %} {# Message textarea #} {% embed "snipplets/forms/form-input.tpl" with{text_area: true, input_for: 'message', input_name: 'message', input_id: 'message', input_rows: '7', input_label_text: 'Mensaje' | translate } %} {% endembed %} {% endblock %} {% endembed %}