Datenschutz-Hinweis:

Gemäß aktueller Rechtsprechung reicht ein einfacher Hinweis auf jegliche Instrumente der Werbewirksamkeitsforschung, des Marketings oder der Verkaufsförderung nicht mehr aus. Zu diesen Instrumenten gehören beispielsweise Cookies oder Tracking (Datenverarbeitung durch Dritte). Auch als Voreinstellung aktivierte Optionen sind unzulässig.
Vielmehr muss der Shopbesucher aktiv bestätigen, dass er mit der Verwendung o. g. Instrumente auf seinem Endgerät einverstanden ist. Bei zustimmungspflichtigen Instrumenten und Funktionen muss also stets ein Opt-In-Verfahren gewählt werden (Kunde klickt aktiv Kästchen an, um seine Zustimmung zu signalisieren). Dieses Verfahren gewährleistet, dass erst nach ausdrücklicher Zustimmung erstmals Daten übertragen werden. Bitte wenden Sie sich zur Klärung von Einzelheiten und zum Abgleich mit der aktuellen Rechtsprechung stets an Ihren Datenschutzbeauftragten.

Weitere Informationen zu Criteo erhalten Sie von der WEBSALE AG.

Der Werbeperformance-Spezialist Criteo bietet fünf Tracking-Kampagnen an, die über die Tracking-Schnittstelle in WEBSALE integriert werden können.

Produkt Tracker (obligatorisch)

Conversion Tracker (obligatorisch)

Kategorie Tracker (optional)

Startseiten Tracker (optional)

Warenkorb Tracker (optional)

Voraussetzung ist, dass jQuery mittels der WEBSALE JavaScript-Bibliothek auf den folgenden Seiten eingebunden ist:

Startseite

Produkt-Seiten

Kategorie-Seiten

Warenkorb-Seite

Bestätigungs-Seite

Schrittweise Anleitung zur Integration

Integrieren Sie die WEBSALE JavaScript-Bibliothek (falls noch nicht vorhanden) in die oben genannten Templates
Materialien: WEBSALE JavaScript-Bibliothek

Kopieren Sie die von Criteo erhaltene kundenspezifische JavaScript-Datei "criteoId.js" in das Shop-Verzeichnis "../benutzer/templates/js/".

Integrieren Sie die folgenden JavaScript-Codezeilen in die Kategorie-Templates:

  {Cat-Data}
    <script type="text/javascript">
    var ws_category_product_list = [];
    {@PR-DATA}
      ws_category_product_list.push('~PR-Number~');
    {/@PR-DATA}
    </script>
  {/Cat-Data}

Integrieren Sie den folgenden JavaScript-Code in das Warenkorb-Template:

{BASKET-PR-Data}
   <script type="text/javascript">
   <!--
    var ws_basket_product_list = [];
    var ws_basket_price_list = [];
    var ws_basket_quantity_list = [];
    {@BASKET-PR-Data}
      ws_basket_product_list.push('~BASKET-PR-Number~');
      ws_basket_price_list.push('~BASKET-PR-Price~');
      ws_basket_quantity_list.push('~BASKET-PR-Quantity~');
    {/@BASKET-PR-Data}
   //-->
   </script>
  {/BASKET-PR-Data}

Kopieren Sie den folgenden Code in die Datei "ws_analyse.js". (Die Zeile var ws_criteo_data =... enthält den zu ersetzenden, von Criteo bereitgestellten kundenspezifischen Code. Der Beispiel-Eintrag dient nur zur Veranschaulichung):

...
...
// *******************************************************************
// Beginn Criteo-Tracking
// *******************************************************************

// *******************************************************************
// Shopspezifische Daten, die von Criteo in den JavaScripten vorgegeben werden:
// *******************************************************************
var ws_criteo_data = [7671, 'ppr', '', '010', [[7671, 772222]]];
// *******************************************************************
// Tracking der Startseite
// *******************************************************************
if(ws_state =='Start') {
   var CRITEO_CONF = [[{
      pageType: 'home'
   }], ws_criteo_data];
}
// *******************************************************************
// Tracking der Kategorie-Seite
// *******************************************************************
else if(ws_state == 'Category') {
// Nur wenn das das Array exisitert: Setze CRITEO_CONF
      if(typeof ws_category_product_list == "object") 
            {
            var tmp_p_list = [];
            var tmp_p_pos = 0;
// Stellt nur die ersten 3 Produkte bereit
            for(; tmp_p_pos < ws_category_product_list.length && tmp_p_pos < 3; tmp_p_pos++) 
            {
                  tmp_p_list[tmp_p_pos] = ws_category_product_list[tmp_p_pos];
            };
            ws_criteo_data.push({'Product IDs':['i',1]});
            var CRITEO_CONF = [[{
            pageType: 'list',
            'Product IDs': tmp_p_list
            }], ws_criteo_data];
            }
}
// *******************************************************************
// Tracking der Produktseite
// *******************************************************************
else if(ws_state == 'Product') {
            ws_criteo_data.push({'Product ID':['i',0]});
            var CRITEO_CONF = [[{
            pageType: 'product',
            'Product ID': ws_prod_number
            }], ws_criteo_data];
}
// *******************************************************************
// Tracking der Warenkorbseite
// *******************************************************************
  <script type="text/javascript">
  <!--
  {BASKET-PR-Data}
    var ws_basket_product_list = [];
    var ws_basket_price_list = [];
    var ws_basket_quantity_list = [];
    {@BASKET-PR-Data}
      ws_basket_product_list.push('~BASKET-PR-Number~');
      ws_basket_price_list.push('~BASKET-PR-Price~');
      ws_basket_quantity_list.push('~BASKET-PR-Quantity~');
    {/@BASKET-PR-Data}
  {/BASKET-PR-Data}
  //-->
  </script>
// *******************************************************************
else if(ws_state == 'Basket') {
// Nur wenn das JS-Objekt exisitert: Setze CRITEO_CONF
      if(typeof ws_basket_product_list == "object" &&
            typeof ws_basket_price_list == "object" &&
           typeof ws_basket_quantity_list == "object") 
           {
           ws_criteo_data.push( {'Product IDs':['i',1], 'Prices':['p',1], 'Quantities':['q',1]});
           var CRITEO_CONF = [[{
           pageType: 'basket',
           'Product IDs': ws_basket_product_list,
           'Prices': ws_basket_price_list,
           'Quantities': ws_basket_quantity_list
           }], ws_criteo_data];
           }
}
// *******************************************************************
// Tracking der Bestätigungsseite
// *******************************************************************
else if(ws_state == 'Confirm') {
       var ws_confirm_pack =  
           {
           productIds: [],
           prices: [],
           quantities: []
           };
       var confirm_pos = 0;
       for(; confirm_pos < ws_basket.length; confirm_pos++) {
            ws_confirm_pack.productIds.push(ws_basket[confirm_pos][1]);
            ws_confirm_pack.prices.push(ws_basket[confirm_pos][3]);
            ws_confirm_pack.quantities.push(ws_basket[confirm_pos][4]);
       }
       ws_criteo_data.push({'Transaction ID':['t',0], 'Product IDs':['i',1], 'Prices':['p',1], 'Quantities':['q',1]});
       var CRITEO_CONF = [[{
       pageType: 'confirmation',
       'Transaction ID': ws_order_number,
       'Product IDs': ws_confirm_pack.productIds,
       'Prices': ws_confirm_pack.prices,
       'Quantities': ws_confirm_pack.quantities
           }], ws_criteo_data];
}
// *******************************************************************
// Tracking nur aktivieren, wenn jQuery eingebunden wurde
// *******************************************************************
if (typeof jQuery != 'undefined') { 
// Laden des criteo - Scripts zum Tracking
       $(document).ready(function(){
           if(typeof CRITEO_CONF != "undefined") {
                 $.getScript('../js/criteo_ld.js', function(data, textStatus, jqxhr) {
                      if (typeof (CRITEO) != "undefined") { 
                                 CRITEO.Load(false); 
                           }
                      });
           }
       });
}
// *******************************************************************
// Ende Criteo-Tracking
// *******************************************************************
...
...

Criteo sendet Ihnen zudem die JavaScript-Komponenten der fünf Kampagnen zu. Hier ein typisches Beispiel für den Criteo-Code der Startseite:

<script type="text/javascript" src="Loader URL"></script> 
<script type="text/javascript">
var CRITEO_CONF = [[{
 pageType: 'home'
}],[7671, 'ppr', '', '010', [[7671, 772222]]]
]; 
if (typeof (CRITEO) != "undefined") { CRITEO.Load(false);}</script>

Den von Criteo erhaltenen kundenspezifischen Code (hier rot markiert - der gezeigte Code ist nur ein Beispiel zur Veranschaulichung) müssen Sie auch in den Criteo JavaScript-Code in der Datei "ws-analyse.js" als Wert für die Variable ws_criteo_data einsetzen (siehe weiter oben, dort ebenfalls rot markiert).


Achtung:

Die Datei "ws_analyse.js" ist dafür konzipiert, alle tracking-spezifischen JavaScripts verschiedener Tracking-Dienstleister aufzunehmen. Wenn Sie von einem Anbieter eine Datei "ws_analyse.js" erhalten, müssen Sie deshalb den Inhalt per Kopie in die gleichnamige Datei im Shopverzeichnis einfügen. Sie sollten den Beginn und das Ende jedes Tracking-Codes mit Kommentarzeilen versehen, damit Sie später die JavaScripts der verschiedenen Dienstleister leichter identifizieren können.

Eine allgemeine Beschreibung der Tracking-Schnittstelle finden Sie unter Wegweiser: Beschreibung der Tracking-Schnittstelle