Pour rendre votre boutique WooCommerce un peu plus originale, je vous propose de modifier le comportement de votre bouton “Ajouter au panier” lorsque le produit est déjà dans le panier.

Vous pouvez par exemple afficher dynamiquement le texte “Acheter à nouveau” à la place du texte “Ajouter au panier” .

Voici comment s’y prendre.

Copiez-collez le texte suivant dans le fichier functions.php de votre thème enfant:

/* Modifier le texte du bouton "Ajouter au panier" si le produit est déjà dans le panier */

add_filter( 'woocommerce_product_single_add_to_cart_text', 'wpm_custom_cart_button_text' );

function wpm_custom_cart_button_text() {
global $woocommerce;

// On récupère tous les produits présent dans le panier
foreach($woocommerce->cart->get_cart() as $cart_item_key => $values ) {
$_product = $values['data'];
// Si l'ID d'un des produits du panier correspond à l'ID du produit de la page produit sur laquelle on se trouve, on change le texte du bouton
if( get_the_ID() == $_product->id ) {
return __('Acheter à nouveau?', 'woocommerce');
}
}
// Si les ID ne correspondent pas, on laisse le texte standard de WooCommerce
return __('Ajouter au panier', 'woocommerce');
}

Maintenant lorsqu’un produit est déjà dans le panier, voici ce que vous devriez avoir sur vos pages produits :

bouton ajout panier woocommerce snippets wpmarmite

Modifiez le texte “Acheter à nouveau?” dans le code par celui que vous préférez.

N’hésitez pas à nous partager en commentaire votre utilisation de ce snippet 😉

Source: CatsWhoCode