Jump to content

Obtener total de pedido en Pixel Facebook [Solucionado]


Eutanasio

Recommended Posts

buenas,

Cómo incluir el valor total del pedido para incluirlo con su debida divisa en el pixel actual de Facebook?

fbq('track', 'Purchase', {
 value: final_price_without_currency,
 currency: 'USD'
 });

Imagino que algo así tal vez?

 fbq('track', 'Purchase', {
   value: '{order_total_paid}',
   currency: '{order_currency_iso_code}'
 });

Gracias!

Link to comment
Share on other sites

22 hours ago, Prestafan33 said:

En la página order_confirmation:


fbq('track','Purchase',{value:{$order.totals.total.amount|floatval}, currency: '{$currency.iso_code}'});

 

Gracias, lo he hecho, ahora solo hace falta esperar a ver si realmente funciona! tienes experiencia con este pixel?

Link to comment
Share on other sites

Yo lo tengo así puesto en alguna tienda. Lo único que la moneda, como es siempre euros, se lo pongo directamente, pero el resto tal cual te he puesto. De todas formas, puedes revisar el código fuente de la página para ver si es correcto, o usar la extensión de facebook Pixel helper para asegurarte de que funciona bien.

Link to comment
Share on other sites

I found a guide HERE from @vekia that uses a different code, will it work as well for PS 1.7? because the one @Prestafan33 provided doesn't seem to work for me, Facebook is not registering anything (registering sales, but not getting the totals of the orders). Using the code from Vekia's guide  in the new Facebook pixel would be something like this:

 fbq('track', 'Purchase', {
   'value':'{order_total_paid}','currency':'{order_currency_iso_code}'
 });

*Lo siento, me acabo de dar cuenta que está todo escrito en inglés...

Link to comment
Share on other sites

En el código que te puse antes la variable para la moneda no es correcta (el resto sí). Lo he comprobado y el código completo lo tengo así (y funciona):

{$order_product_ids = []}
{foreach $order.products as $prod}
  {$order_product_ids[] = $prod.product_id|intval}
{/foreach}
<script>
  {literal}
  (function wait() {
    if ((typeof fbq !== 'undefined')) {
        fbq('track','Purchase',{
          {/literal}
          content_type: 'product',
          value: {$order.totals.total.amount|floatval},
          currency: '{$currency.iso_code}',
          order_id: {$order.details.id},
          num_items: {$order.products|count},
          content_ids: {$order_product_ids|@json_encode nofilter}
          {literal}
        });    
    } 
    else {
      setTimeout(wait, 10);
    }
  })();
  {/literal}
</script>

El usar la función "wait()" es simplemente para asegurar que han cargado las librerías de Facebook antes de enviar el tracking de pedido completado. Y aquí envía el valor del pedido, la moneda, el ID del pedido, el número de productos en el pedido y sus ids correspondientes.

Edited by Prestafan33 (see edit history)
  • Like 1
Link to comment
Share on other sites

31 minutes ago, Prestafan33 said:

En el código que te puse antes la variable para la moneda no es correcta (el resto sí). Lo he comprobado y el código completo lo tengo así (y funciona):


{$order_product_ids = []}
{foreach $order.products as $prod}
  {$order_product_ids[] = $prod.product_id|intval}
{/foreach}
<script>
  {literal}
  (function wait() {
    if ((typeof fbq !== 'undefined')) {
        fbq('track','Purchase',{
          {/literal}
          content_type: 'product',
          value: {$order.totals.total.amount|floatval},
          currency: '{$currency.iso_code}',
          order_id: {$order.details.id},
          num_items: {$order.products|count},
          content_ids: {$order_product_ids|@json_encode nofilter}
          {literal}
        });    
    } 
    else {
      setTimeout(wait, 10);
    }
  })();
  {/literal}
</script>

El usar la función "wait()" es simplemente para asegurar que han cargado las librerías de Facebook antes de enviar el tracking de pedido completado. Y aquí envía el valor del pedido, la moneda, el ID del pedido, el número de productos en el pedido y sus ids correspondientes.

ook mil gracias! y lo tienes instalado en el archivo order-confirmation.tpl de tu template?

Link to comment
Share on other sites

  • Eutanasio changed the title to Obtener total de pedido en Pixel Facebook [Solucionado]
14 hours ago, Prestafan33 said:

Sí, exacto, ahí.

Gracias! así lo he configurado, ahora solo queda esperar que Facebook registre datos. Sabrías decirme el enlace donde puedo encontrar registrada en Facebook Analytics el registro de conversiones del pixel con los totales de sus cestas? no le encuentro esa info en Facebook Analytics -> Actividad -> Ingresos, es donde debería aparecer no?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...