1) Antes de mais, assegure-se de que o seu código XML ou JSON segue as regras do E-goi. São simples:
- Englobe todo o código com o parâmetro <items> (em XML) ou "items" (em JSON).
- Englobe cada item individual com o parâmetro <item> (em XML) ou "item" (em JSON).
- Pode ter tantos parâmetros <item> quantos quiser, e cada um deles com os seus próprios parâmetros, mas não pode subdividir (ou seja, aprofundar o nível) nos parâmetros que inserir dentro de cada <item>.
Repare neste exemplo de um output em XML para dois produtos (com nome, link, data, imagem, descrição e preço). Basta que a formatação seja esta:
<items>
<item>
<title>Produto 1</title>
<link>http://www.minhaloja.com/produto1</link>
<date>16-11-2015</date>
<image>http://www.minhaloja.com/produto1.jpg</image>
<description>O meu primeiro produto</description>
<price>10</price>
</item>
<item>
<title>Produto 2</title>
<link>http://www.minhaloja.com/produto2</link>
<date>16-11-2015</date>
<image>http://www.minhaloja.com/produto2.jpg</image>
<description>O meu segundo produto</description>
<price>10</price>
</item>
</items>
Prefere em JSON? É só usar esta formatação:
{ "items": { "item": [{ "title": "Produto 1", "link": "http://www.minhaloja.com/produto1", "date": "16-11-2015", "image": "http://www.minhaloja.com/produto1.jpg", "description": "O meu primeiro produto", "price": "10" }, { "title": "Produto 2", "link": "http://www.minhaloja.com/produto2", "date": "16-11-2015", "image": "http://www.minhaloja.com/produto2.jpg", "description": "O meu segundo produto", "price": "10" }] } }
2) Em seguida, configure um URL na sua loja online que gere dinamicamente um output XML ou JSON com base no formato acima descrito (ex. http://www.minhaloja.com/JSON/ se usar JSON)
Como faço com que esse output apareça dentro do meu email?
1) Crie o seu email com o nosso editor Email Builder. Ao editá-lo, arraste um elemento "HTML" do painel do lado esquerdo para o sítio do seu email onde quer que apareça o output da sua loja.2) Vai aparecer um bloco de conteúdo HTML nesse sítio. Use o painel do lado direito para substituir todo o HTML que lá está por este:
{{EXTERNALBLOCK:http://www.minhaloja.com/JSON/}}{{EXTERNALFORMAT:json}}{{EXTERNALITEMS:count=2}} <table style="width: 100%;"> <tr> <td style="width: 50%; text-align: left;"> <img src="{{EXTERNALITEM:image}}" alt="{{EXTERNALITEM:image}}" border="0" style="border: 0px none; outline: none; text-decoration: none; vertical-align: bottom;" /> </td> <td style="width: 50%; color: #9D9D9D; font-family: Arial,Helvetica Neue,Helvetica,sans-serif; font-size: 13px; line-height: 22px; text-align: left;"> <span style="font-family: Arial,Helvetica Neue,Helvetica,sans-serif; font-size:16px; font-weight: normal; margin: 0px;"> {{EXTERNALITEM:title}}</span> <br /><br /> <br /> <span style="font-size:20px;">{{EXTERNALITEM:price}}</span> </td> </tr> </table> {{ENDEXTERNALITEMS}}{{ENDEXTERNALFORMAT}}{{ENDEXTERNALBLOCK}}
- O EXTERNALBLOCK inicia o carregamento do conteúdo externo e vai obtê-lo ao URL que indicar. O EXTERNALFORMAT diz se o output é JSON ou XML. O EXTERNALITEMS:count diz quantos produtos vão aparecer (caso o output do seu URL tenha muitos produtos).
- O HTML logo em seguida mostra a imagem e o título de cada produto.
- O ENDEXTERNALITEMS, ENDEXTERNALFORMAT e ENDEXTERNALBLOCK fecham o bloco de conteúdo externo.
E é só isto! Quando enviar o seu email pelo E-goi, as variáveis vão ser convertidas no nome, imagem e preço dos produtos em promoção que estão no JSON ou XML da sua loja online.
E se no email eu quiser mostrar os produtos que os meus clientes têm no carrinho?
Nesse caso, a primeira coisa a fazer é configurar o nosso Track & Engage na sua loja online para que o E-goi saiba quais são os produtos que cada cliente adiciona ao carrinho. Depois, use o nosso código de personalização !current_cart_products para inserir no seu email o ID dos produtos que o cliente adicionou. Para isso, o URL que está no exemplo de código acima apresentado ( http://www.minhaloja.com/JSON/ ) deve ficar assim:
{{EXTERNALBLOCK:http://www.minhaloja.com/JSON/!current_cart_products}}
Desta forma, o bloco externo com todas as informações do produto será carregado com base na ID atribuída pelo Track & Engage ao produto específico que o cliente adicionou ao carrinho.