Drupal 7 Commerce: Dynamically calculate line item price based on rules and individual product configuration

We've got some experience on individual product calculators based on Drupal Commerce. Today I'd like to share a bit of that with you: Individual line item price calculation based on rules.

We're for example using these methods in custom calculations for product. I was searching for the API methods to use for a period of time and these are they:

  1. rules_invoke_event('commerce_product_calculate_sell_price', $line_item);
  2.     commerce_line_item_rebase_unit_price($line_item);
  3.  
  4.     // Line item total = unit price because quantity is always 1 in our case
  5.     $line_item->commerce_total = $line_item->commerce_unit_price;
  6.  
  7.     $line_item_total_price_array = commerce_line_items_total(array($line_item));
  8.  
  9. // Format the price
  10. $price_formatted = commerce_currency_format($line_item_total_price_array['amount'], $line_item_total_price_array['currency_code'], $line_item)

Furthermore you will need line item price calculation rules and a bit more stuff to make the magic happen :)

Kommentare

Kommentar hinzufügen

Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt. Wenn Sie ein zulässiges Avatar mit Ihrer E-Mail-Adresse verknüpft haben, wird dieses als Avatar verwendet.

Weitere Informationen über Formatierungsoptionen

Aktualisieren Geben Sie die Zeichen ein, die Sie im Bild sehen. Geben Sie die im Bild dargestellten Zeichen ein; wenn Sie diese nicht lesen können, senden Sie das Formular ohne Eingabe ab, um ein neues Bild zu generieren. Groß-/Kleinschreibung wird nicht beachtet.  Switch to audio verification.