You are here

function hook_ucga_item_alter in Ubercart 8.4

Same name and namespace in other branches
  1. 6.2 docs/hooks.php \hook_ucga_item_alter()
  2. 7.3 uc_googleanalytics/uc_googleanalytics.api.php \hook_ucga_item_alter()

Allows modules to alter items passed to the e-commerce tracking code.

The UC Google Analytics module constructs function calls that work through the Google Analytics JS API to report purchased items for e-commerce tracking purposes. The module builds the argument list for each product on an order and uses this hook to give other modules a chance to alter what gets reported to Google Analytics. Additional arguments passed to implementations of this hook are provided for context.

Nothing should be returned. Hook implementations should receive the $item array by reference and alter it directly.

Parameters

array $item: An array of arguments being passed to Google Analytics representing an item on the order, including order_id, sku, name, category, price, and qty.

\Drupal\uc_order\OrderProductInterface $product: The product object as found in the $order object.

array $trans: The array of arguments that were passed to Google Analytics to represent the transaction.

\Drupal\uc_order\OrderInterface $order: The order object being reported to Google Analytics.

1 invocation of hook_ucga_item_alter()
uc_googleanalytics_ecommerce_js in uc_googleanalytics/uc_googleanalytics.module
Builds the e-commerce JS passed to Google Analytics for order tracking.

File

uc_googleanalytics/uc_googleanalytics.api.php, line 72
Hooks provided by the Google Analytics for Ubercart module.

Code

function hook_ucga_item_alter(array &$item, OrderProductInterface $product, array $trans, OrderInterface $order) {

  // Example implementation: always set the category to "UBERCART".
  $item['category'] = 'UBERCART';
}