Template y macros TMPL del TMS



Aquí encontrarás la lista de todas las etiquetas (o macros) que se pueden utilizar en el TMS. Todas estas etiquetas no estarán necesariamente disponibles desde la interfaz.

Principios generales

Utilizar la sintaxis adecuada

  • Las etiquetas de valor son de auto-cierre, ej.: <TMPL_VAR $var />
  • Las etiquetas de bucles y condiciones están constituidas por una etiqueta de apertura y una de cierre, ej.: <TMPL_IF $var> ... </TMPL_IF>
Los dos tipos de etiqueta siguen las reglas elementales de sintaxis XML:
  • La parte que cierra automáticamente las etiquetas viene precedida por un /: <etiqueta />
  • Para las etiquetas de apertura y cierre, el '/' debe ponerse en la que cierra: <etiqueta>...</etiqueta>
  • Puedes añadir un número indefinido de atributos en el interior de la etiqueta: <etiqueta atributo="valor" ></etiqueta>
  • Ejemplo de etiqueta de auto-cierre TMPL_VAR: <TMPL_VAR prdref ESCDQUOTE />
  • Ejemplo de estructura de control TMPL_IF: <TMPL_IF cgip.codigopromo REGEX('^(PM-)')> ... </TMPL_IF>

Escape de valores

Ciertos caracteres están prohibidos, ya que pueden generar errores de sintaxis en tu código dependiendo del contexto de la etiqueta.
  • var product_type = 'abrigo de invierno';
El acento activará un error Javascript si no se evita de forma adecuada. Existen 3 opciones en nuestros TMPL_VAR según el contexto.
  • Si el valor está entre apóstrofos (o single quote en inglés), deberás utilizar ESCSQUOTE (por ESCape Single QUOTE)
  • var product_type = '<TMPL_VAR cgip.product_type ESCSQUOTE />'
  • Si el valor está entre comillas (o double quote en inglés), deberás utilizar ESCDQUOTE (por ESCape Double QUOTE)
  • var product_type = "<TMPL_VAR cgip.product_type ESCDQUOTE />"
  • Si el valor dinámico se encuentra dentro de una URL, deberás utilizar ESCHTTP (por ESCape HTTP)
  • http://t.partner.com?product_type=<TMPL_VAR cgip.product_type ESCHTTP />

Utilizar una macro simple

  •  cgip.xxx : xxx designa cualquier parámetro pasado en nuestro marcador collector. Esta etiqueta devolverá el valor asociado a este parámetro.
<TMPL_VAR <cgip.xxx> />
Ejemplo:
EA_data[
"codigopromo", "PM-486234"
];
En este ejemplo, la etiqueta <TMPL_VAR cgip.codigopromo ESCDQUOTE /> devolverá el valor PM-486234.
Este principio puede aplicarse a todos los parámetros de Eulerian Analytics incluidos en las listas que se mencionan en este artículo. Por el contrario, XXXXX debe contener la clave del parámetro tal como aparece en la llamada y no en el código de origen. En la mayoría de los casos, estos dos valores son idénticos, pero no siempre: prdref -> prdr0, path -> urlp
Para más información sobre este tema, puedes consultar el artículo siguiente.
  • ref: Reenvía la referencia única de la conversión en función del tipo de tag. El valor de respuesta corresponde a nuestro parámetro ref en el caso de un tag de confirmación de registro o de pedido, y a un parámetro actionref en el contexto de un seguimiento de conversión archivado.
<TMPL_VAR ref />
  • amount: Reenvía el total de la conversión, impuestos incluidos, dependiendo del contexto. El valor de respuesta corresponde a nuestro parámetro amount en el caso de un tag de confirmación de registro o de pedido.
<TMPL_VAR amount />
Nota: Esta etiqueta no puede utilizarse en el contexto de una cesta iniciada.
  • amountexvat: Reenvía el total de la conversión, sin impuestos incluidos (venta o registro).
<TMPL_VAR amountexvat />
  • type: Reenvía el tipo de conversión según el contexto. El valor de respuesta corresponde a nuestro parámetro type en el caso de un tag de confirmación de registro o de pedido.
<TMPL_VAR type />
  • payment: Reenvía el método de pago en el tag de venta. El valor de respuesta corresponde a nuestro parámetro payment.
<TMPL_VAR payment />
  • wspath: Reenvía el nombre de la página actual tras el tratamiento y regula el renombramiento en caso necesario.
<TMPL_VAR wspath />
Por defecto, el path corresponde a la parte de la URL que sigue al nombre del dominio (a partir del primer "/") sin los parámetros CGI.
<http://www.sitio.com/categoria/page?param1=valor&param2=valor>
Path Eulerian: /categoria/pagina
Info: El valor de respuesta de esta etiqueta contendrá el primer "/"
  • wsurl: Reenvía la URL actual completa con los parámetros CGI.
<TMPL_VAR wsurl />
<http://www.sitio.com/categoria/page?param1=valor&param2=valor>
  • rand: Reenvía un número aleatorio con cada nueva carga de nuestro tag.
<TMPL_VAR rand />
Dicho número cambia cada vez que se carga una nueva página, pero el valor de respuesta es el mismo para todos los tags. Si necesitas un número aleatorio único por tag, o varios valores aleatorios distintos, utiliza la etiqueta <TMPL_VAR mtrand ESCDQUOTE />
  • mthrand: Reenvía un valor aleatorio único cada vez que se usa la etiqueta.
<TMPL_VAR mthrand />
  • prdref: Reenvía la primera referencia de producto pasada a nuestro tag mediante el parámetro prdref.
<TMPL_VAR prdref />
Para devolver varias fichas de producto, debes utilizar una estructura del tipo <TMPL_LOOP prdloop><TMPL_VAR prdqty /></TMPL_LOOP>.
  • prdname: devuelve el nombre del primer producto pasado mediante el parámetro prdname de nuestro tag.
<TMPL_VAR prdname />
Para devolver los nombres de todos los productos pasados, debes utilizar una estructura del tipo <TMPL_LOOP prdloop><TMPL_VAR prdname ESCDQUOTE/></TMPL_LOOP>.
  • prdamount: Reenvía el total del primer producto pasado mediante el parámetro prdamount de nuestro tag, impuestos incluidos.
<TMPL_VAR prdamount />
Para devolver los totales, impuestos incluidos, de los productos pasados, debes utilizar una estructura del tipo <TMPL_LOOP prdloop><TMPL_VAR prdamount /></TMPL_LOOP>.
  • prdamountexvat:
<TMPL_VAR prdamountexvat />
Reenvía el total del primer producto pasado mediante el parámetro prdamount de nuestro tag, impuestos no incluidos.
Para devolver los totales, impuestos no incluidos, de los productos pasados, debes utilizar una estructura del tipo <TMPL_LOOP prdloop><TMPL_VAR prdamountexvat/></TMPL_LOOP>.
  • prdqty: Reenvía la cantidad de productos de la primera referencia pasada mediante el tag prdqty de nuestro tag.
<TMPL_VAR prdqty />
Para devolver las cantidades de todos los productos pasados, debes utilizar una estructura del tipo <TMPL_LOOP prdloop><TMPL_VAR prdqty /></TMPL_LOOP>.
  • prd_pv.xxx: O xxx designa la categoría deseada. Esta etiqueta reenvía el valor categoría asociada del primer producto pasado mediante el parámetro prdparam-xxx.
<TMPL_VAR prd_pv.xxx />
Ejemplo de la marca del producto pasada en el parámetro prdparam-marca: <TMPL_VAR prd_pv.marca ESCDQUOTE />
Para devolver los nombres de todos los productos pasados, debes utilizar una estructura del tipo <TMPL_LOOP prdloop><TMPL_VAR prd_pv.marca ESCDQUOTE/></TMPL_LOOP>.
  • prdnb:
<TMPL_VAR prdqty />
Número de productos únicos diferentes. Si tienes 3 productos A y 2 productos B, prdnb tendrá un valor de 2.
  • prdcnt: Número total de productos. Si tienes 3 productos A y 2 productos B, prdcnt tendrá un valor de 5.
<TMPL_VAR prdcnt />
  • email: Reenvía el ID de correo del usuario.
<TMPL_VAR email />
Eulerian puede guardar esta variable durante una sesión para restituirla más tarde sin necesidad de que el usuario esté conectado.
  • eparam: La etiqueta eparam permite enviar un ID partner recuperado previamente mediante un link de tracking Eulerian para transmitirlo en un parámetro del tag.
<TMPL_VAR eparam />
Para esto, deberás añadir el parámetro &eparam=ID_PARTNER en cualquier link de tracking Eulerian, tanto estático como dinámico.
Aunque esta opción esté siempre disponible, en Eulerian preferimos la etiqueta mtuid que permite industrializar este proceso con multitud de partners.
De hecho, cualquier nuevo valor guardado en eparam borrará el valor precedente. Así pues, no es posible generalizar el uso en estas condiciones.
  • uideah:
<TMPL_VAR uideah />
Este parámetro reenvía el ID interno Eulerian cifrado que corresponde al visitante actual.
Nuestro tracking first party combinado con nuestra tecnología fingerprint contribuyen a garantizar la fiabilidad de nuestra base user. Tus partners pueden beneficiarse de esta calidad recuperando nuestros IDs mediante le etiqueta uideah y tratándolos por su cuenta.
  • uidsession: Este parámetro reenvía un ID de sesión generado por Eulerian, único por visita y por visitante.
<TMPL_VAR uidsession />
  • uidws: Este parámetro reenvía el ID CRM cliente correspondiente al visitante actual. Se trata del valor que recuperamos a través de un parámetro uid pasado a nuestro tag.
<TMPL_VAR uidws />
  • uidwsh: Este parámetro reenvía el ID CRM cliente hasheado correspondiente al visitante actual. Se trata del valor que recuperamos a través de un parámetro uid pasado a nuestro tag, hasheado por Eulerian.
<TMPL_VAR uidwsh />
  • mtuid: La etiqueta mtuid permite enviar un ID partner recuperado previamente mediante un link de tracking Eulerian para transmitirlo en un parámetro del tag.
<TMPL_VAR mtuid />
Al contrario que eparam, el valor no se borra de un partner a otro y las bases son independientes. Puedes implementar este intercambio de datos añadiendo un parámetros en nuestras URLs de tracking o activando el cookie matching via Eulerian Real Time Data.
  • dcuid: La etiqueta dcuid permite enviar un ID partner recuperado previamente vía un enlace de tracking Eulerian para transmitirlo como parámetro del tag. Es el equivalente de mtuid para los conectores S2S.
<TMPL_VAR dcuid />
  • dccduid: La etiqueta dccduid permite enviar un ID partner como dcuid. dccduid reenvía el del dispositivo actual, mientras que dcuid reenvía el último ID partner colectado.
<TMPL_VAR dccduid />
  • visitnb: La etiqueta visitnb permite enviar el número de visitas total del usuario desde el inicio de la colecta.
<TMPL_VAR visitnb />
  • year: Transforma el año actual al formato YYYY. Ej.: 2022
<TMPL_VAR year />
  • month: Transforma el mes actual al formato MM. Ej: marzo -> 03
<TMPL_VAR month />
  • day: Día actual en formato DD.
<TMPL_VAR day />
  • hour: Hora actual en formato HH.
<TMPL_VAR hour />
  • minute: Minuto actual en formato MM.
<TMPL_VAR minute />
  • second: Segundo actual en formato SS.
<TMPL_VAR second />
  • epoch: Fecha actual en formato Epoch.
<TMPL_VAR epoch />
  • geoloc: Este etiqueta muestra la combinación del código País y del código Región, que corresponden respectivamente a las etiquetas geocountry y georegion.
Ej: ESP8
<TMPL_VAR geoloc />
  • os: Muestra el sistema operativo del usuario actual.
<TMPL_VAR os />
  • browser: Muestra el navegador web del usuario actual y su versión. Ej.: Firefox 95.0
<TMPL_VAR browser />
  • lang: Muestra el idioma del navegador en mayúsculas y en formato ES, IT, etc.
<TMPL_VAR lang />
  • isp: Muestra el proveedor de acceso a Internet del usuario actual.
<TMPL_VAR isp />
  • ip: Muestra la IP del usuario actual.
<TMPL_VAR ip />
<TMPL_VAR ip6 />
  • dnt: Muestra 1 si el usuario actual ha activado el do not track a nivel del navegador. En caso contrario, muestra 0.
<TMPL_VAR dnt />
  • geocountry: Muestra el código país en mayúsculas.
Ej: ES, IT, etc.
<TMPL_VAR geocountry />
  • georegion: Muestra el código región.
<TMPL_VAR georegion />
  • currency: Muestra la divisa.
<TMPL_VAR cgip.cur />
Ej: EUR, USD.
  • devicetype: Muestra el tipo de dispositivo utilizado por el usuario (valores: Smartphone, Desktop, Tablet).
<TMPL_VAR devicetype />
  • iduserparam.NOMBRE_PARAMETRO: Muestra el valor de un parámetro de usuario.
<TMPL_VAR iduserparam.NOMBRE_PARAMETRO />
Ej.: iduserparam.birthdate, iduserparam.gender, iduserparam.optin, etc.
  • <TMPL_VAR np_NOMBRE_PARAMETRO Reenvía el valor de una parámetro partner en un tag partner.
<TMPL_VAR np_NOMBRE_PARAMETRO />
Ejemplo: TMPL_VAR np_account

Parámetros ad-centric

El módulo activación (tags nativos/personalizados y llamadas S2S) te permite enviar datos ad-centric vía las siguientes macros.
Clave
Correspondencia
Ejemplo
<TMPL_VAR channelc />
Abreviatura del canal
ad
<TMPL_VAR channelt />
Tipo de toque
c
<TMPL_VAR channelpubtxt />
Nombre de soporte
soporte
<TMPL_VAR channelopetxt />
Nombre de la campaña
campana-brand-camisa-roja
<TMPL_VAR channelsengtxt />
Motor de búsqueda SEO
Bing
<TMPL_VAR channelsengkwtxt />
Palabra clave SEO
marca
<TMPL_VAR channelrfdomtxt />
Dominio referente ad-centric
http...
<TMPL_VAR channelrfdomuritxt />
URI referente ad-centric
/pagina
<TMPL_VAR channelloctxt />
Nombre de la ubicación
soporte-160×600
<TMPL_VAR channelcreatxt />
Nombre del banner
150316-es-brand
<TMPL_VAR channelslkw />
Palabra clave SEM
ambientador coche nuevo
<TMPL_VAR channelsikey />
Segmento entrante
segmentación
<TMPL_VAR channelsival />
Subsegmento entrante
caliente
<TMPL_VAR channelslcamptxt />
Campaña SEM
Marca-Bing
<TMPL_VAR channelsladgrouptxt />
Grupo de palabra clave
marca
<TMPL_VAR <view.0.media> />
Abreviatura de un medio para el modelo de atribución último canal
ml, sf, ad ...
<TMPL_VAR <view.3.pub> />
ID del soporte para el modelo de atribución 3
13492
<TMPL_VAR channelclickid />
Recupera el clickid del toque de marketing actual (máx. 150 caracteres)
Info: Existen otras claves que puedas ser consultadas por cada uno de los modelos. Estas claves pueden ser utilizadas:
  • en las exportaciones de datos S2S / TMS para los conectores en tiempo real hacia la BI
  • en los userdata API para sacar los datos de atribución

Manipular los bucles

Recuperar los productos con prdloop

En un tag personalizado, la etiqueta <TMPL_VAR prdref /> reenvía únicamente la referencia del primer producto pasado en nuestro marcador collector.
Para pasar el conjunto de productos contenidos en un pedido o una cesta, debes utilizar nuestra etiqueta <TMPL_LOOP prdloop><TMPL_IF idx>*Separador*</TMPL_IF><TMPL_VAR prdref /></TMPL_LOOP>
<TMPL_IF idx>*Separador*</TMPL_IF> permite separar cada referencia en el separador introducido a excepción de la primera. Esto permite obtener en particular BV6543;VR7844;VR3321 en lugar de ;BV6543;VR7844;VR3321. En ciertas ocasiones, el primer ';' generaría un error JavaScript.
También disponemos de la etiqueta <TMPL_VAR prd_pv.xxx /> para las categorías de producto que corresponden en nuestro sistema a los parámetros prdparam-xxx. Ésta se rige por el mismo principio y permite enviar la categoría de cada producto presente en la cesta o en el pedido.
A continuación algunos ejemplos útiles.

Referencias de producto separadas por una coma

Los productos A5435, B7553 y C9873 pasados en el marcador Eulerian collector:
"prdref", "A5435"
, "prdref", "B7553"
, "prdref", "C9873"
Para enviar la lista de referencias de productos separadas por una ',', puedes utilizar la estructura siguiente:
<TMPL_LOOP prdloop><TMPL_IF idx>,</TMPL_IF><TMPL_VAR prdref /></TMPL_LOOP>
A5435,B7553,C9873
La etiqueta <TMPL_IF idx> debe ponerse siempre antes del contenido que deseas enviar. La condición idx es válida para todos los productos detallados en el pedido a excepción del primero. Es lo que permite no tener que poner el primer producto precedido de una ','.

Referencias de total y cantidades

Una cesta iniciada con los productos A4535, B7553 y C9873 con los totales y cantidades respectivas:
"scart", "1"
,"prdref", "A5435"
,"prdamount", "10.00"
,"prdquantity", "1"
,"prdref", "B7553"
,"prdamount", "15.00"
,"prdquantity", "2"
,"prdref", "C9873"
,"prdamount", "12.00"
,"prdquantity", "3"
Para enviar la lista de referencias, totales y cantidades de productos separados por una ',', puedes utilizar la estructura siguiente:
<TMPL_LOOP prdloop><TMPL_IF idx>|</TMPL_IF><TMPL_VAR prdref />,<TMPL_VAR prdamount />,<TMPL_VAR prdqty /></TMPL_LOOP>
A5435,10.00,1|B7553,15.00,2|C9873,12.00,3

Categorías de producto

Los productos A5435, B7553 y C9873 con sus categorías y tamaños respectivos:
"prdref", "A5435"
, "prdparam-categoria", "pantalon"
, "prdparam-talla", "43"
, "prdref", "B7553"
, "prdparam-categoria", "camisa"
, "prdparam-talla", "40"
, "prdref", "C9873"
, "prdparam-categoria", "chaqueta"
, "prdparam-talla", "43"
Para enviar la lista de referencias de productos, con las tallas y categorías separadas por una ',', puedes utilizar la estructura siguiente:
<TMPL_LOOP prdloop><TMPL_IF idx>|</TMPL_IF>,<TMPL_VAR prdref />:<TMPL_VAR prd_pv.categorie />:<TMPL_VAR prd_pv.taille /></TMPL_LOOP>
A5435:pantalon:43|B7553:camisa:40|C9873:chaqueta:43

Suma de los productos

Esta macro permite tener el total de productos multiplicado por la cantidad:
Ejemplo:
"prdamount", "10"
, "prdqty", "3"
, "prdamount", "25"
, "prdqty", "1"
, "prdamount", "15"
, "prdqty", "2"
Macro
<TMPL_LOOP prdloop> +(<TMPL_UNLESS prdqty REGEX('^1
#x27;)
>,<TMPL_VAR prdqty /> * </TMPL_UNLESS><TMPL_VAR prdamount />)</TMPL_LOOP>
85

Remplazar un valor por otro

Si quieres recuperar el valor "nuevo_cliente" en nuestro parámetro personalizado "tipo_cliente" y que tu partner quiere recibir "NC"
<TMPL_IF cgip.tipo_cliente REGEX("nuevo_cliente")>NC</TMPL_IF>
NC

Recuperar les parámetros user y los segmentos de audiencia

Es posible recuperar los parámetros user y/o audiencias cuando se activa un tag.

Recuperar los parámetros user first

<TMPL_LOOP iduserparamloop><TMPL_IF idx>,</TMPL_IF>"<TMPL_VAR key />":"<TMPL_VAR val />"</TMPL_LOOP>
Reenvío de IDs Eulerian y valores de parámetros user. Ejemplo: ("ID_PARAM_USER":"ID_VALOR_PARAM_USER","NOMBRE_PARAM_USER":"VALOR_PARAM_USER") → ("5":"10","AGE":"25-30anos")

Recuperar los parámetros user-centric 2nd o 3rd

<TMPL_LOOP partneruserparamloop><TMPL_IF idx>,</TMPL_IF>"<TMPL_VAR key />":"<TMPL_VAR val />"</TMPL_LOOP>
Reenvío de IDs Eulerian y valores de parámetros user procedentes del proveedor de datos. Ejemplo: ("ID_PARAM_USER":"ID_VALOR_PARAM_USER","NOM_PARAM_USER","VALOR_PARAM_USER") → ("2":"15","CODIGO_POSTAL","75001")

Recuperar los segmentos de audiencia del usuario

<TMPL_LOOP clusternameloop><TMPL_IF idx>,</TMPL_IF>"<TMPL_VAR key />":"<TMPL_VAR val />"</TMPL_LOOP>
Reenvío de los nombres de audiencias y los nombres de segmentos incluidos en estas audiencias. Ejemplo: ("NOMBRE_AUDIENCIA":"NOMBRE_SEGMENTO_AUDIENCIA") → ("PERFIL":"BUYER")

Descripción de los parámetros

  • TMPL_LOOP iduserparamloop: Bucle de recuperación de IDs y valores de parámetros user-centric.
  • TMPL_LOOP partneruserparamloop: Bucle de recuperación de IDs Eulerian y valores de parámetros user procedentes del proveedor de datos.
  • TMPL_LOOP clusternameloop: Bucle de recuperación de audiencias y segmentos incluidos en la audiencia.
  • TMPL_IF idx: permite separar cada referencia en el separador introducido (aquí la coma ","), a excepción de la primera.
  • TMPL_key: id/nombre del parámetro user-centric (o de la audiencia).
  • TMPL_val: id/valor del parámetro user-centric (o del segmento).

Recuperar los segmentos de audiencia del usuario desde una audiencia de la Master DMP

<TMPL_LOOP id+site(4)_clusternameloop><TMPL_IF idx>,</TMPL_IF>"<TMPL_VAR key />":"<TMPL_VAR val />"</TMPL_LOOP>
o id+site(4) = id del sitio + 4 primeras letras del nombre del sitio, por ejemplo para un sitio con id 23 y nombre=my-website
<TMPL_LOOP 23my-w_clusternameloop><TMPL_IF idx>,</TMPL_IF>"<TMPL_VAR key />":"<TMPL_VAR val />"</TMPL_LOOP>
Reenvía los nombres de las audiencias y los nombres de los segmentos incluidos en dichas audiencias.

Recuperar los parámetros de un motor de búsqueda interno

<TMPL_VAR isengineparam.KEY />
Reenvía el dato correspondiente a la CLAVE especificada.
Ejemplo:
EA_data = [
"isearchkey", "destinos",
"isearchdata", "sem"
];
La macro <TMPL_VAR isengineparam.destinos /> reenvía sem

Descripción de los parámetros

  • isengineparam.CLAVE: nombre del parámetro del motor de búsqueda.

mod

Como se ha visto anteriormente, Eulerian provee el contenido mostrado por la mayor parte de nuestras macros añadiendo la opción ESCSQUOUTE, ESCDQUOTE o ESCHTTP en la etiqueta.
Sin embargo, si deseas obtener un bloque de contenido importante o fuera de nuestras etiquetas, puedes utilizar las etiquetas <TMPL_MOD> ... </TMPL_MOD> precisando la opción de escape (ESCHTTP es la más frecuente).
  • Abajo, un ejemplo de URL entre las etiquetas <TMPL_MOD ESCHTTP></TMPL_MOD>:
<TMPL_MOD ESCHTTP>http://sub.dominio.tld/directory/page?param1=1&param2=2</TMPL_MOD>
  • El resultado:
http%3a//sub.dominio.tld/directory/page%3fparam1%3d1%26param2%3d2
Eulerian gestiona varios tipos de cifrado de datos mediante la etiqueta <TMPL_MOD>:
  • MD5: 900150983cd24fb0d6963f7d28e17f72
  • SHA224LX: 23097d223405d8228642a477bda255b32aadbce4bda0b3f7e36c9da7
  • SHA224UX: 23097D223405D8228642A477BDA255B32AADBCE4BDA0B3F7E36C9DA7
  • SHA224B64: Iwl9IjQF2CKGQqR3vaJVsyqtvOS9oLP342ydpw==
  • SHA256LX: ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
  • SHA256UX: BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61F20015AD
  • SHA256B64: ungWv48Bz+pBQUDeXa4iI7ADYaOWF3qctBD/YfIAFa0=
  • SHA384LX: cb00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7
  • SHA384UX: CB00753F45A35E8BB5A03D699AC65007272C32AB0EDED1631A8B605A43FF5BED8086072BA1E7CC2358BAECA134C825A7
  • SHA384B64: ywB1P0WjXou1oD1pmsZQBycsMqsO3tFjGotgWkP/W+2AhgcroefMI1i67KE0yCWn
  • SHA512LX: ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f
  • SHA512UX: DDAF35A193617ABACC417349AE20413112E6FA4E89A97EA20A9EEEE64B55D39A2192992A274FC1A836BA3C23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F
  • SHA512B64: 3a81oZNherrMQXNJriBBMRLm+k6JqX6iCp7u5ktV05ohkpkqJ0/BqDa6PCOj/uu9RU1EI2Q86A4qmslPpUyknw==
  • BASE64: PFRNUExfTU9EIEJBU0U2ND5CQVNFNjQ8L1RNUExfTU9EPg==
Ejemplo: <TMPL_MOD SHA512LX> CONTENIDO </TMPL_MOD>
Ejemplo para cifrar un mail: <TMPL_MOD SHA512LX> <TMPL_VAR email /> </TMPL_MOD>

Utiliza las condiciones

tmpl_if / tmpl_else

Puedes utilizar estructuras condicionales de tipo IF/ELSE para condicionar el contenido enviado en tu tag o en una variable. La etiqueta TMPL_IF sólo muestra su contenido si la condición que contiene es verdadera:
<TMPL_IF orderestimate>
var type = "conversion";
<TMPL_ELSE>
var type = "view";
</TMPL_IF>
En este ejemplo básico, la variable type es "conversion" para un tag de registro o de venta y "view" en los demás casos. ELSE es verdadera si IF es falsa, el contenido sólo se interpreta si la condición orderestimate no se valida.

tmpl_if / tmpl_unless

En lugar de la estructura IF/ELSE, puedes utilizar IF y UNLESS para tener el mismo resultado:
<TMPL_IF orderestimate>
var type = "conversion";
</TMPL_IF>
<TMPL_UNLESS orderestimate>
var type = "view";
</TMPL_UNLESS>
Puedes insertar varias etiquetas TMPL_IF y TMPL_UNLESS para realizar tratamientos más complejos que requieren la validación de condiciones múltiples:
Ejemplo:
<!—La estructura siguiente es muy frecuente en nuestros Templates nativos -->
<TMPL_IF orderestimate>
// Tag de confirmación ...
</TMPL_IF>
<TMPL_UNLESS orderestimate>
<TMPL_IF scart>
// Tag de cesta iniciada...
</TMPL_IF>
<TMPL_UNLESS scart>
<TMPL_IF prdref>
<TMPL_UNLESS cgip.prdr1>
// Tag producto ...
</TMPL_UNLESS>
<TMPL_IF cgip.prdr1>
// Tag categoría con múltiples productos ...
</TMPL_IF>
</TMPL_IF>
<TMPL_UNLESS prdref>
<TMPL_IF homepage>
// Tag homepage ...
</TMPL_IF>
</TMPL_UNLESS>
</TMPL_UNLESS>
</TMPL_UNLESS>
  • order: Esta condición verifica si la página actual corresponde a nuestro tag de confirmación de venta.
  • estimate: Esta condición verifica si la página actual corresponde a nuestro tag de confirmación de registro.
  • orderestimate: Esta condición verifica si la página actual es un tag de venta o de registro.
  • scart: Esta condición verifica si la página actual corresponde a nuestro tag de cesta iniciada.
  • prdref: Esta condición verifica si la página actual contiene uno o varios parámetros prdref.
  • homepage: Esta condición verifica si la página actual corresponde a la homepage o página de inicio del sitio. (Ésta se declarará durante la creación del sitio)
  • cgip.XXXXX: XXXXX designa aquí el nombre del parámetro nativo o personalizado pasado en nuestro tag. Puedes utilizar este método para condicionar la interpretación del contenido sobre la presencia de cualquier parámetro pasado a nuestro marcador collector.
Una página de cesta iniciada taggeada con el detalle de los productos validará siempre la regla <TMPL_IF prdref>. Por esta razón utilizamos también <TMPL_UNLESS scart> y <TMPL_UNLESS orderestimate> para excluir esta posibilidad y evitar activar 2 tags en la misma página.
También usamos <TMPL_IF cgip.prdr1> y <TMPL_UNLESS cgip.prdr1> para distinguir las páginas de categoría de las páginas de producto. Cada parámetro prdref pasado en nuestro marcador es automáticamente reindexado partiendo de 0: prdr0, prdr1, prdr2. Testando la presencia de prdr1, verificarás si la página actual es una página de producto o no.

Atributos adicionales

Es posible añadir ciertos atributos en nuestras etiquetas para modificar el contenido.
La lista a continuación detalla los atributos más útiles para sacar el máximo partido del uso de nuestra solución Eulerian Tag Master.

regex

Este atributo puede añadirse a nuestras etiquetas TMPL_IF o TMPL_UNLESS para diseñar reglas de condicionamiento incluso más potentes basadas en una expresión regular.
Las expresiones regulares son un pseudolenguaje estandarizado comúnmente utilizado en informática y de fácil acceso. Existen varios sitios web que se dedican a divulgar su uso,  como este, por ejemplo .
Ejemplo:
<TMPL_IF cgip.profile REGEX("newcustomer")> var _pt_newcus = 1; </TMPL_IF>
<TMPL_UNLESS cgip.profile REGEX("newcustomer")> var _pt_newcus = 0; </TMPL_UNLESS>
Este simple código va a testar el valor pasado en el parámetro profile de nuestro marcador collector. Si éste valida el newcustomer, la variable _pt_newcus tendrá un valor de 1, y en caso contrario, de 0.
Esta técnica evita crear 2 tags distintos a las reglas de condicionamiento con son contrarias a la gestión dinámica del contenido de la variable _pt_newcus.
Sintaxis:
REGEX("ARG1")
  • REGEX → (obligatorio) Nombre del atributo.
  • ARG1 → (obligatorio) La función REGEX toma como primer y único parámetro la expresión regular que se quiera testear.

sregex

El atributo SREGEX permite ir aún más lejos modificando dinámicamente el contenido devuelto por una etiqueta TMPL_VAR. Capturamos el elemento en la expresión regular cerrándolo entre paréntesis, y lo reutilizamos mediante la palabra clave $X, donde X designa el paréntesis en la expresión.
Ejemplo:
<!-- Referencia de producto SX12345F453 -->
<TMPL_VAR prdref SREGEX("SX(.*)","$1") />
<!-- Resultado: 12345F453 -->
<TMPL_VAR prdref SREGEX("SX(.*?)F(.*)","$1$2") />
<!-- Resultado: 12345453 -->
<TMPL_VAR prdref SREGEX("SX(.*)","VR$1") />
<!-- Resultado: VR12345F453 -->
<!-- Total del producto: 23.50 -->
<TMPL_VAR prdamount SREGEX("(.*)\.(.*)","$1,$2") />
<!-- Resultado: 23,50 -->
Sintaxis:
  • SREGEX → (obligatorio) Nombre del atributo.
  • ARG1 → (obligatorio) La expresión regular testada sobre la variable.
  • ARG2 → (obligatorio) El formato aplicado a la variable.
Info: Es posible encadenar varios atributos SREGEX en una misma etiqueta para modificar varias veces el valor.

strftime

Si tu variable contiene un timestamp, este atributo te permitirá traducirlo en un formato de fecha inteligible (o esperado por el parámetro).
Ejemplo:
<TMPL_VAR epoch STRFTIME('%Y-%m-%d %H:%M:%S', 'Europa/Madrid') />
Sintaxis:
  • STRFTIME → (obligatorio) Nombre del atributo
  • ARG1 → (obligatorio) Formato de fecha deseado (POSIX)
  • ARG2 → (obligatorio) Huso horario que aplicar

math + precision

El atributo MATH permite efectuar diversas operaciones sobre el contenido de la variable si este es un número. En el caso de una división o de una multiplicación, puedes redondear el resultado con el atributo PRECISION.
Ejemplo:
<!-- Un producto de 20.00 € algo que vamos a aplicar una reducción de 20% redondeando el resultado a 2 cifras tras la coma. -->
<TMPL_VAR prdamount MATH("*","0.80") PRECISION("2") />
<!-- Resultado: 16,00 € -->
Sintaxis:
  • MATH → (obligatorio) Nombre del atributo.
  • ARG1 → (obligatorio) Tipo de operación utilizada sobre la variable. (* / - +)
  • ARG2 → (obligatorio) El valor aplicado.

MENOR y MAYOR

  • <TMPL_IF vtest LT(10)> Inf 10 </TMPL_IF>
  • <TMPL_IF vtest LE(10)> Inf/EQ 10 </TMPL_IF>
  • <TMPL_IF vtest GE(10)> Sup/EQ 10 </TMPL_IF>
  • <TMPL_IF vtest GT(10)> Sup 10 </TMPL_IF>

base64

El atributo BASE64 permite codificar en base64 el contenido de la variable proporcionada
Ejemplo:
<!-- Codificar en base64 el valor de la referencia de producto: ref-123456789 -->
<TMPL_VAR prdref BASE64 />
<!-- Resultado: cmVmLTEyMzQ1Njc4OQ== -->
Sintaxis:
  • BASE64 → (obligatorio) Nombre del atributo.

CONTEXT FLAG

Es posible hacer bucles de Context Flag con esta macro
<TMPL_IF cflag>
<TMPL_LOOP cflag>
<TMPL_IF idx>,</TMPL_IF>
.
.
.
.
</TMPL_LOOP>
</TMPL_IF>
Se pueden recuperar los valores siguientes:
[ '<TMPL_VAR idx />', 'p:_cflagiter_idx' ],
[ '<TMPL_VAR key />', 'p:_cflagiter_key' ],
[ '<TMPL_VAR keytxt />', 'p:_cflagiter_key_txt' ],
[ '<TMPL_VAR cat />', 'p:_cflagiter_cat' ],
[ '<TMPL_VAR cattxt />', 'p:_cflagiter_cat_txt' ],
[ '<TMPL_VAR inc />', 'p:_cflagiter_inc' ],
[ '<TMPL_VAR tmd />', 'p:_cflagiter_tmd' ],
[ '<TMPL_VAR aged />', 'p:_cflagiter_aged' ]
[ '<TMPL_VAR current />', 'p:_cflagiter_current' ]
Nota: Para poder utilizar las macros en los Context Flag, hace falta activar la funcionalidad en las opciones del sitio "Context-Flag: autoriza valores en plantillas (TMPL_LOOP cflag)"

Flags

Sintaxis

Habilitar un flag

<TMPL_FLAG $flag />

Deshabilitar un flag

<TMPL_FLAG !$flag />

Valores disponibles

  • Eliminación del retorno de carro: DELCARRIAGERET, estado predeterminado: activo, ej: <TMPL_FLAG !DELCARRIAGERET /> deshabilitará la eliminación del retorno de carro
  • Eliminación de líneas vacías: DELEMPTYLINE, estado predeterminado: activo, ej: <TMPL_FLAG !DELEMPTYLINE /> deshabilitará la eliminación de líneas vacías

Uso en template

Agregar al comienzo del template, con o sin un retorno de carro después
<TMPL_FLAG !DELCARRIAGERET />
<https://my-custom-endpoint.com/segments/eulerian?HDR_CUSTOM_X-API-KEY=alguna_clave_api&POST_CTYPE=csv&POST_DATA=>
id_visitante;valor;segmento;vencimiento
<TMPL_VAR dcuid ESCHTTP />;valor_EA_7;segmento_prueba_EA_7;
o
<TMPL_FLAG !DELCARRIAGERET />https://my-custom-endpoint.com/segments/eulerian?HDR_CUSTOM_X-API-KEY=alguna_clave_api&POST_CTYPE=csv&POST_DATA=
id_visitante;valor;segmento;vencimiento
<TMPL_VAR dcuid ESCHTTP />;valor_EA_7;segmento_prueba_EA_7;