Comment intégrer une installation de Magento 2 sans tête ?

Estimé 5 minute de lecture
|
Mis à jour 18 oct. 2024, 18:56 EST
Vous apprendrez

Vous apprendrez

Découvrez comment intégrer Klaviyo à une installation Magento 2 sans tête. Si vous utilisez Magento 2 pour le backend de votre boutique e-commerce, mais un framework différent pour le frontend (comme React.js, Angular, etc.), les informations suivantes vous concernent.

Cette intégration se fait en trois étapes :

  1. Connectez votre boutique Magento 2 via l'intégration native de Klaviyo pour synchroniser les données relatives aux commandes, au catalogue et aux abonnés.
  2. Ajoutez manuellement des extraits de code à votre site pour activer la fonctionnalité de suivi sur site.
  3. (Si vous utilisez une structure URL personnalisée pour votre catalogue de produits) Ajoutez des règles de réécriture pour les URL de produits.
Connectez l'intégration native de Klaviyo

Connectez l'intégration native de Klaviyo

Tout d'abord, connectez votre boutique Magento 2 via l'intégration native de Klaviyo pour synchroniser les données de commande, de catalogue et d'abonné en suivant les étapes de la section Démarrer avec Magento 2.

Une grande partie de l'intégration de Klaviyo dans Magento 2 repose sur la récupération de données via l'API côté serveur de Magento. En général, cela n'est pas affecté par l'utilisation d'un frontend découplé, et l'intégration native suivra les événements suivants sans autre configuration :

  • Commande passée
  • Commande exécutée
  • Envoi effectué
  • Commande annulée
  • Ordre remboursé
  • Début de l'encaissement

En outre, veuillez noter que :

  • Les événements Started Checkout seront synchronisés si vous continuez à créer des devis et à leur attribuer une adresse électronique lorsque l'utilisateur passe à la caisse.
  • Si vous avez activé la synchronisation des clients abonnés à la table de newsletter de Magento 2, la synchronisation devrait fonctionner comme prévu.
Ajouter manuellement des extraits de code

Ajouter manuellement des extraits de code

Si vous utilisez une configuration sans tête, vous devez ajouter manuellement le JavaScript "Active on Site" de Klaviyo (également connu sous le nom de Klaviyo.js) à votre site. Klaviyo.js détecte les utilisateurs actifs sur votre site et active les formulaires Klaviyo. 

Nous fournissons également des extraits qui vous permettent d'effectuer les opérations suivantes :

  • Suivi des produits consultés
    Suivez le moment où un utilisateur consulte des produits spécifiques sur votre site (ce qui peut être exploité dans un flux d'abandon de navigation).
  • Suivi des éléments récemment consultés
    Suivez les éléments récemment consultés sur le profil d'un utilisateur.
  • Suivi des articles ajoutés au panier
    Déterminez quand un utilisateur ajoute un article à son panier.
  • Suivi des utilisateurs connectés
    Si vous disposez d'une fonctionnalité de création de compte, suivez l'utilisateur lorsqu'il se connecte.
Actif sur le site 

Actif sur le site 

Ajoutez l'extrait Klaviyo.js suivant pour qu'il apparaisse sur chaque page de votre site web. Cela permettra d'activer le suivi actif sur le site et les formulaires Klaviyo. Veillez à remplacer PUBLIC_API_KEY par votre clé d'API publique Klaviyo.

<script type="text/javascript" async="" src="https://static.klaviyo.com/onsite/js/PUBLIC_API_KEY/klaviyo.js"></script>

Après avoir ajouté Klaviyo.js, vous devrez charger l'objet Klaviyo sur toutes les pages où vous souhaitez ajouter l'un des snippets suivants (tels que Viewed Product, Added to Cart, etc). L'objet klaviyo ne doit être chargé qu'une seule fois par page.

Pour charger l'objet klaviyo, installez manuellement l'extrait suivant sur les pages nécessaires :

<script type="text/javascript"> !function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))});return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n ;(n=window._klOnsite).push.apply(n,arguments)}}}}() ; </script>
Produit visualisé 

Produit visualisé 

Si vous souhaitez mettre en place un flux d'abandon de navigation ou créer des segments basés sur l'activité de navigation sur les produits, vous devez ajouter le suivi des événements JavaScript pour l'indicateur Produit consulté. Toutes les mesures des produits visualisés sont liées aux profils des utilisateurs. Sur le modèle de votre page produit, ajoutez l'extrait suivant.

<script type="text/javascript">
var klaviyo = window.klaviyo || [] ;
var item = {
     "ProductName": item.ProductName,
     "ProductID": item.ProductID,
     "SKU": item.SKU,
     "Categories": item.Categories,
     "ImageURL": item.ImageURL,
     "URL": item.URL,
     "Brand": item.Brand,
     "Price": item.Price,
     "CompareAtPrice": item.CompareAtPrice
 };
 klaviyo.track("Visualisé Produit", article) ;
 </script>

Veillez à mettre à jour les valeurs des propriétés JSON dans l'extrait afin qu'elles tirent dynamiquement les informations pertinentes nécessaires pour cette propriété.

Articles récemment consultés

Articles récemment consultés

En outre, un autre extrait permet d'ajouter des entrées à un flux visuel "Éléments récemment consultés" sur le profil de l'utilisateur. L'extrait suivant peut être ajouté directement en dessous de l'extrait Viewed Product

Veillez à remplacer item.___ dans l'extrait par l'objet item que votre plateforme utilise pour les propriétés du produit.

<script type="text/javascript">
var klaviyo = window.klaviyo || [] ;
klaviyo.trackViewedItem({
     "Titre": item.ProductName,
    "ItemId": item.ProductID,
    "Categories": item.Categories,
    "ImageUrl": item.ImageURL,
    "Url": item.URL,
    "Métadonnées": {
       "Brand": item.Brand,
       "Price": item.Price,
       "CompareAtPrice": item.CompareAtPrice
     }
   }) ;
 </script>
Ajouté au panier

Ajouté au panier

Si vous souhaitez envoyer des e-mails concernant les paniers abandonnés aux visiteurs qui ajoutent des articles à leur panier, mais qui ne parviennent pas à la page de paiement, vous devez suivre un indicateur relatif aux articles ajoutés au panier. Un client doit être identifié (c’est-à-dire qu’un cookie doit lui être associé) pour suivre cet événement. Voici un exemple de demande où le panier contient déjà un article (Winnie l’ourson) et où un autre article vient d’y être ajouté (Le Conte de deux cités) : 

<script type="text/javascript">
klaviyo.track("Ajouté au panier", {
    "$value": 29.98,
    "AddedItemProductName": "Un conte de deux villes",
    "AddedItemProductID": "1112",
    "AddedItemSKU": "TALEOFTWO",
    "AddedItemCategories": ["Fiction", "Classique", "Enfants"],
    "AddedItemImageURL": "http://www.example.com/path/to/product/image2.png",
     "AddedItemURL": "http://www.example.com/path/to/product2",
     "AddedItemPrice": 19.99,
    "AddedItemQuantity": 1,
    "ItemNames": ["Winnie l'ourson", "Un conte de deux villes"],
    "CheckoutURL": "http://www.example.com/path/to/checkout",
     "Articles": [{
         "ProductID": "1111",
         "SKU": "WINNIEPOOH",
         "ProductName": "Winnie the Pooh",
         "Quantity": 1,
         "ItemPrice": 9.99,
         "RowTotal": 9.99,
         "ProductURL": "http://www.example.com/path/to/product",
         "ImageURL": "http://www.example.com/path/to/product/image.png",
         "ProductCategories": ["Fiction", "Children"]
       },
       {
         "ProductID": "1112",
         "SKU": "TALEOFTWO",
         "ProductName": "A Tale of Two Cities",
         "Quantity": 1,
         "ItemPrice": 19.99,
         "RowTotal": 19.99,
         "ProductURL": "http://www.example.com/path/to/product2",
         "ImageURL": "http://www.example.com/path/to/product/image2.png",
         "ProductCategories": ["Fiction", "Classics"]
       }
     ]
   }) ;
 </script>
Utilisateurs connectés

Utilisateurs connectés

Si les clients peuvent créer des comptes sur votre site web, vous pouvez ajouter un code supplémentaire pour identifier et suivre les utilisateurs connectés. Ce code doit être exécuté une fois que l'utilisateur s'est connecté.

Voici un exemple de script pour vous aider à démarrer :

klaviyo.identify({
  "$email" : customer.email,
  "$first_name" : customer.first_name,
  "$last_name" : customer.last_name
}) ;
Ajouter des règles de réécriture pour les URL de produits

Ajouter des règles de réécriture pour les URL de produits

Votre catalogue de produits Magento 2 devrait se synchroniser normalement avec Klaviyo via notre intégration native, bien que si vous utilisez une structure d'URL personnalisée, vous devrez ajouter quelques règles de réécriture à votre base de code.

L'URL par défaut d'un produit Magento 2 suit la structure suivante :

https://[VOTRE MAGASIN]/catalogue/produit/vue/id/[ID PRODUIT]

Si votre magasin utilise une structure URL telle que :

https://[VOTRE MAGASIN]/produits/[Nom du produit]

Ensuite, vous devrez ajouter quelques règles de réécriture à votre base de code pour rediriger les liens standard des produits Magento 2 vers votre structure URL personnalisée.

Ressources complémentaires

Ressources complémentaires

Cet article vous a-t-il été utile ?
Utilisez ce formulaire uniquement pour nous faire part de vos commentaires sur cet article. Comment contacter l’assistance.

Explorer d’autres contenus Klaviyo

Communauté
Contactez des membres de votre secteur, des partenaires et des experts Klaviyo pour trouver de l’inspiration, partager des informations et obtenir des réponses à toutes vos questions.
Formation en direct
Participez à une session en direct avec des experts Klaviyo pour découvrir les bonnes pratiques, apprendre à configurer des fonctionnalités clés et bien plus encore.
Assistance

Accédez à l’assistance via votre compte.

Assistance par e-mail (essai gratuit et comptes payants) Disponible 24h/24 et 7j/7

Chat/assistant virtuel
La disponibilité varie selon l'emplacement et le type de forfait