web-dev-qa-db-fra.com

Woocommerce: Comment changer le texte d'ajout au panier dans une certaine catégorie?

Je change déjà le texte d'ajout au panier dans le produit global

remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
add_action( 'woocommerce_after_shop_loop_item', 'add_cart_button_replace', 10);

function add_cart_button_replace() {
    global $product;
    $link = $product->get_permalink();
    echo do_shortcode('<a href="'.$link.'" class="button addtocartbutton">+show OFFER</a>');



}

mais, dans une certaine page de catégorie de produit comme ici , où j’ai un free-products terme dans product-category taxonomie personnalisée et je souhaite modifier le texte d’ajout au panier en + me choisir avec lien ajouter au panier.

1
Marvin Desoyo

Vous pouvez utiliser la fonction has_term pour rechercher le terme souhaité.

function add_cart_button_replace() {
    global $product;
    $link = $product->get_permalink();

    $button_text = __('+show OFFER', 'woocommerce');

   // check if the current product has a "product-category" of "free-products"
    if(has_term('free-products', 'product_cat', $product->get_id()))
        $button_text = __('+choose me', 'woocommerce');

    echo do_shortcode('<a href="'.$link.'" class="button addtocartbutton">' . $button_text . '</a>');

}

Vous pouvez également en savoir plus sur has_term function.

Update : changez la taxonomie product-category en product_cat selon votre commentaire.

1
Den Isahac