Créer un lien pour ajouter un produit au panier avec WooCommerce

Mis à jour le :

Positionner un lien d’ajout au panier de WooCommerce où vous le souhaitez dans votre thème WordPress c’est possible en récupérant l’identifiant produit et en l’injectant dans votre URL.

À l’aide de votre éditeur de code favori, ouvrez le fichier PHP de votre thème dans lequel vous souhaitez rajouter un lien d’ajout au panier. Insérez ensuite les lignes de codes ci-dessous :

<?php global $product; $id = $product->id; ?>
<a class="btn btn-success" href="https://example.com/checkout/?add-to-cart=<?php echo $id ?>"><?php _e('Buy it', 'textdomain'); ?></a>

Dans un premier temps, nous récupérons l’ID du produit. Vous devez être positionné à l’intérieur de la boucle qui génère l’affichage de ce dernier.

Dans un second temps, nous créons un simple lien en HTML auquel nous attribuons une classe CSS – issue de Twitter Bootstrap en l’occurrence. Modifiez à présent les éléments suivants :

  • Le nom de domaine ;
  • Le permalien de la page de commande, ici checkout en anglais ;
  • L’intitulé du bouton qu’il vous faudra traduire avec Poedit ;

Dès lors que vous aurez ajuster ces lignes de code selon vos besoins, sauvegardez le fichier et ouvrez la page de votre site basée sur votre template PHP. Si tout fonctionne bien, un simple clic ajoutera le produit au panier.

Avatar de Aurélien Denis

Protégez votre site WordPress

Vos données sont précieuses,
ne prenez pas le risque de tout perdre.
Confiez-moi votre maintenance !

Ces articles devraient t’intéresser…

11 réponses
  1. Avatar de jérémy escobar
    jérémy escobar

    Dans quel fichier doit on coller ce bout de code?

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Il vous faut voir avec votre développeur pour le placer à l’endroit concerné par l’ajout du lien. Cela dépend directement de votre thème et de son respect de la hiérarchie de modèles de WordPress.

  2. Avatar de Franco
    Franco

    Je comprend pas où tu mets tes lignes de codes. Selon moi si tu veux ton lien est dans un page classique WP, dans page.php. Je me trompe ?

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Ces lignes de code doivent être injectées à l’endroit où elles doivent s’afficher dans le fichier du modèle PHP correspondant ou bien via un hook. Ce tutoriel est réservé à des développeurs.

  3. Avatar de honorat
    honorat

    Bonjour moi mon souci est que je veux que lorsqu’on clique sur le bouton « Ajouter au panier », je veux que le bouton me dirige vers la page contact. Au fait j’ai renommé le bouton « Ajouter au panier » par « Demande de devis/avis » donc je veux que ce bouton me redirige vers la page contact.

    1. Avatar de Franco
      Franco

      Tu devrais plutôt créé un bouton dirigeant sur la page contact au lieu d’utiliser WooCommerce.

  4. Avatar de Eskali
    Eskali

    Bonjour,
    Moi j’ai le problème que certaines url indexées de mes produits ont une extension add to cart…C’est à dire qu’au lieu de tomber sur la page produit, le visiteur provoque une mise au panier sans avoir rien demandé. C’est très ennuyeux et cela peut effrayer le visiteur qui a l’impression qu’on lui force la main. Sauriez-vous à quoi sont dues ces url et comment remédier à ce problème? Merci

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Il s’agit de l’URL d’ajout au panier quand on clique sur le bouton correspondant. Pour gérer l’indexation, je vous recommande SEOPress PRO qui supporte WooCommerce.

  5. Avatar de Mimi
    Mimi

    Bonjour j’ai crée une page sur mon site avec des références de produits que je vends je souhaite faire en sorte que les clients puissent cliquer sur le produit et qu’il s’ajoute directement dans le panier comment est ce possible ? Merci beaucoup de votre aide

  6. Avatar de ChilChil
    ChilChil

    Hello,

    Est-ce que ca pourrait fonctionner si je veux ajouter plusieurs produits en une fois dans le panier?

    Merci pour la réponse!

    1. Avatar de Aurélien Denis
      Aurélien Denis

      C’est une bonne question, je pense que tu peux faire passer un tableau d’ID en séparant par des virgules.