Nosso aplicativo da YourViews na VTEX IO já cria automaticamente um formulário padrão na rota new-review
. No entanto, alguns clientes utilizam header e footer personalizados, o que pode resultar na não exibição correta desse formulário.
Para resolver essa questão, o cliente tem a opção de criar uma nova rota de formulário, vinculando-a ao bloco fornecido pela YourViews. Isso garante que o formulário será exibido corretamente, respeitando os elementos de customização aplicados no header e footer do cliente.
O primeiro passo para integrar o bloco de formulário no repositório da loja do cliente é criar o arquivo JSON que servirá como estrutura do formulário.
Certifique-se de seguir a estrutura abaixo como exemplo:
{
"store.custom#write-review": {
"blocks": [
"yv-product-review-form",
]
},
}
Isso garantirá que o formulário será carregado.
O próximo passo é criar uma rota dedicada para a página de "escrever avaliação". Essa rota será adicionada ao arquivo JSON de rotas (routes.json
) do repositório da loja, permitindo que os clientes acessem a página de avaliação diretamente.
Ao configurar a rota no arquivo
routes.json
, o cliente deve se atentar ao nome dado ao bloco do formulário no arquivo write-review.json. O nome usado na rota deve ser o mesmo definido no JSON do bloco, para que a integração funcione corretamente.
No arquivo routes.json
, a rota usou o nome store.custom#write-review
, que precisa estar em conformidade com o nome do bloco no write-review.json, conforme passado neste help.
Para tornar o formulário mais atrativo e consistente com o visual do site, o cliente pode envolver o formulário com o header e o footer do próprio site. Isso permitirá que o formulário se integre de forma mais harmônica ao layout existente.
Para envolver o formulário com o header e o footer, o cliente deve abrir novamente o arquivo JSON do bloco do formulário (write-review.json
) e fazer o seguinte:
- Localize o JSON do formulário já criado.
- Envolva o conteúdo do formulário com os blocos correspondentes ao header e ao footer da loja.