Exception à un filtre actif (Créer un compte)

  • WordPress :6.3
  • Statut : non résolu
2 sujets de 1 à 2 (sur un total de 2)
  • Auteur
    Messages
  • #2463524
    Harmony
    Participant
    Initié WordPress
    3 contributions

    Bonjour,

    Ma configuration WP actuelle

    • Version de PHP/MySQL : 7
    • Thème utilisé : Boutique
    • Extensions en place :
    • Nom de l’hébergeur : OVH

    Problème(s) rencontré(s) :

    Bonjour,

    J’ai un filtre qui agit sur l’affichage des prix des produits woocommerce :

    // Enlever prix min d’un produit variable
    /* Afficher « À partir de » pour les produits variables */
    add_filter( ‘woocommerce_variable_sale_price_html’, ‘wpm_variation_price_format’, 10, 2 );
    add_filter( ‘woocommerce_variable_price_html’, ‘wpm_variation_price_format’, 10, 2 );

    function wpm_variation_price_format( $price, $product ) {
    //On récupère le prix min et max du produit variable
    $min_price = $product->get_variation_price( ‘min’, true );
    $max_price = $product->get_variation_price( ‘max’, true );

    // Si les prix sont différents on affiche « À partir de … »
    if ($min_price != $max_price){
    $price = sprintf( __( ‘%1$s’, ‘woocommerce’ ), wc_price( $max_price ) );
    return $price;
    // Sinon on affiche juste le prix
    } else {
    $price = sprintf( __( ‘%1$s’, ‘woocommerce’ ), wc_price( $min_price ) );
    return $price;
    }
    }

    Je souhaite ajouter une exception pour un seul produit woocommerce (je voudrais faire disparaitre tout simplement le prix pour ce produit-là). Quel serait la bonne fonction ? Et comment puis-je préciser un produit spécifique dans un filtre wordpress ? Merci  !
    <div id= »ConnectiveDocSignExtentionInstalled » data-extension-version= »1.0.4″></div>

    #2463537
    ferman
    Modérateur
    Maître WordPress
    7119 contributions

    Bonjour,

    Essayez avec la même fonction modifiée comme ci-dessous: (condition ajoutée: 1000 est l’ID du produit exclu.)


    /* Afficher "À partir de" pour les produits variables */
    add_filter( 'woocommerce_variable_sale_price_html', 'wpm_variation_price_format', 10, 2 );
    add_filter( 'woocommerce_variable_price_html', 'wpm_variation_price_format', 10, 2 );

    function wpm_variation_price_format( $price, $product ) {

    if ($product->get_ID() == 1000){
    return;
    }
    else{//On récupère le prix min et max du produit variable
    $min_price = $product->get_variation_price( 'min', true );
    $max_price = $product->get_variation_price( 'max', true );

    // Si les prix sont différents on affiche "À partir de ..."
    if ($min_price != $max_price){
    $price = sprintf( __( 'A partir de %1$s', 'woocommerce' ), wc_price( $min_price ) );
    return $price;
    // Sinon on affiche juste le prix
    }
    else {
    $price = sprintf( __( '%1$s', 'woocommerce' ), wc_price( $min_price ) );
    return $price;
    }
    }
    }

     

    • Cette réponse a été modifiée le il y a 10 mois et 3 semaines par ferman.
2 sujets de 1 à 2 (sur un total de 2)
  • Vous devez être connecté pour répondre à ce sujet.