Commerce: impostare il prezzo di un line-item manualmente

5 contenuti / 0 new
Ultimo contenuto
Commerce: impostare il prezzo di un line-item manualmente

Ho la necessità di impostare manualmente il prezzo di alcuni line-item che vengono inseriti secondo una logica dentro il carrello.

Ho quindi un prodotto nello shop con prezzo 0.

Il codice che uso è questo:

<?php
function mymodule_test($product_id)
{
        global
$user;
       
$user = user_load($user->uid);
       
$order = commerce_cart_order_load($user->uid);
       
$order_wrapper = entity_metadata_wrapper('commerce_order', $order);
       
$product = commerce_product_load($product_id);
       
$line_item = commerce_product_line_item_new(
               
$product,
               
1,
               
0,
                array(
                ),
               
'cover'
       
);
       
$line_item_wrapper = entity_metadata_wrapper("commerce_line_item", $line_item);
       
$line_item_wrapper->commerce_unit_price->data = commerce_price_component_add(
               
$line_item_wrapper->commerce_unit_price->value(),
               
'base_price',
                array(
                               
'amount' => 1234,
                               
'currency_code' => 'EUR',
                               
'data' => array(),
                ),
               
TRUE
       
);
       
$insert_line_item = commerce_cart_product_add($user->uid, $line_item_wrapper->value(), FALSE);
        return
'done';
}
?>

Questo è il test che uso (funzione invcata da hook_menu()) - il che funziona a metà: mi inserisce si l'oggetto, ma con il prezzo preso dal prodotto dello shop, mi ignora totalmente il prezzo 'manuale' (1234).

Subito pensavo che avere 2 base_price facesse confusione, ho quindi provato a usare un altro componente (usato anche da altri moduli), come 'discount', ma nada, non riesco a inserire quel maledetto prezzo manuale.

Qualcuno può aiutarmi?

Ho anche provato a guardare il codice delle regole che vanno a lavorare sui prezzi dei line-item, e niente, non fanno nulla che non faccio anche io, solo che il mio codice non funziona!

Vi prego stò impazzendo..!!

Drupal Version:

Nessuno?

up

up

nessuno?