
Como criar um formulários em uma página AMP utilizando componente amp-form.
Primeiro, você deverá incluir a seguinte biblioteca em sua página
<script async custom-element="amp-form" src="https://cdn.ampproject.org/v0/amp-form-0.1.js"></script>
O componente amp-form permite o uso de formulários e campos em um documento AMP.
AMP-forms permite que o envio do formulário seja feito pelo protocolo HTTP e XHR (XMLHttpRequest). Para que o envio das informações do formulário seja feita pelo protocolo HTTP será necessário que uma nova página seja carregada, enquanto o envio por XHR não requer que a página seja recarregada.
Customizando as mensagens de sucesso: amp-form-submit-success e amp-form-submit-error.
<style amp-custom>
form.amp-form-submit-success [submit-success],
form.amp-form-submit-error [submit-error]{
margin-top: 16px;
}
form.amp-form-submit-success [submit-success] {
color: green;
}
form.amp-form-submit-error [submit-error] {
color: red;
}
form.amp-form-submit-success.hide-inputs > input {
display: none;
}
</style> Utilize o atributo action para especificar a página de destino que deverá processar os dados do formulário. Isto irá funcionar apenas para requisições do tipo GET.
A URL deve estar com protocolo HTTPS.
O exemplo a seguir simula um campo de busca:
<form method="GET"
class="p2"
action="/components/amp-form/submit-form"
target="_top">
<div class="ampstart-input inline-block relative mb3">
<input type="search"
placeholder="Search..."
name="googlesearch">
</div>
<input type="submit"
value="OK"
class="ampstart-btn caps">
</form> Utilize o atributo action-xhr para enviar os dados do formulário via XMLHttpRequest (XHR).
O componente amp-form irá exibir os elementos submit-success ou submit-error baseado na resposta do servidor.
<form method="post"
class="p2"
action-xhr="/components/amp-form/submit-form-input-text-xhr"
target="_top">
<div class="ampstart-input inline-block relative m0 p0 mb3">
<input type="text"
class="block border-none p0 m0"
name="name"
placeholder="Name..."
required>
<input type="email"
class="block border-none p0 m0"
name="email"
placeholder="Email..."
required>
</div>
<input type="submit"
value="Subscribe"
class="ampstart-btn caps">
<div submit-success>
<template type="amp-mustache">
Success! Thanks {{name}} for trying the
<code>amp-form</code> demo! Try to insert the word "error" as a name input in the form to see how
<code>amp-form</code> handles errors.
</template>
</div>
<div submit-error>
<template type="amp-mustache">
Error! Thanks {{name}} for trying the
<code>amp-form</code> demo with an error response.
</template>
</div>
</form> Documentação completa em inglês: clique aqui.
Módulo gratuito Roger_CnpjAlfanumerico que aplica máscara e validação do novo CNPJ alfanumérico no checkout e formulários do Magento 2 e…
A partir de 06/07/2026 a Receita passa a emitir CNPJ alfanumérico. Conheça o plugin grátis que aplica máscara e validação…
Para remover um módulo do Magento 2, siga os passos abaixo: 1. Desabilitar o módulo Primeiro, desabilite o módulo usando…
Para cancelar 100% do pedido e criar um crédito para todos os itens através da API REST do Magento 2,…
No Magento 2, a quantidade "reservada" na "Salable Quantity" é gerenciada principalmente pelos módulos MSI (Multi-Source Inventory). A "Salable Quantity"…
Como corrigir o erro ao acessar o Admin do Magento 2. Mesmo após fazer o login, permanece na tela de…
Ver comentários
Alguém precisa criar um plugin pra isso em wordpress
Olá Paulo, já existe alguns plugins prontos que fazem isso no repositório do Wordpress
Oi Roger
Eu uso wordpress no meu site e tenho usado o plugin https://wordpress.org/plugins/amp/ para utilizar o AMP, mas não consigo fazer funcionar os formulários com o method="post" em meu site.
Você poderia fazer um tutorial ensinando como que se faz isso?
Obrigado.
Olá Thiago, boa noite,
Sim irei estudar o caso e no futuro gerar um tutorial, infelizmente estou sem tempo para desenvolver nessas últimas semans.