Я нашел решение:
'function woo_add_cart_fee () {global $ woocommerce;
if(is_admin() && !defined('DOING_AJAX'))
return;
//Initialisation des coûts
$consigne = 0.5;
//Parcours du panier
$cart = $woocommerce->cart->get_cart();
foreach($cart as $product)
{
$the_product = get_product($product['product_id']);
//Frais d'activation, un coût par produit
$nb_products1 = $product['quantity'];
$activation_cost += ((float) $the_product->get_attribute('Consigne')) * $nb_products1;
if( $activation_cost >= 0 )
{
$nb_products = $nb_products + $nb_products1 ;
}
}
//Application des coûts calculés
if( $nb_products >= 0 )
{
$woocommerce->cart->add_fee("Consigne", $consigne*$nb_products, true, '');
}
} add_action (' woocommerce_cart_calculate_fees ',' woo_add_cart_fee '); «