Skip to content

Commit

Permalink
Remove UA tracking from abstract class
Browse files Browse the repository at this point in the history
  • Loading branch information
Martyn Jones committed Oct 27, 2023
1 parent 3188a55 commit 1c54142
Showing 1 changed file with 1 addition and 54 deletions.
55 changes: 1 addition & 54 deletions includes/class-wc-abstract-google-analytics-js.php
Original file line number Diff line number Diff line change
Expand Up @@ -93,11 +93,7 @@ abstract public static function load_analytics( $order = false );
* @param WC_Order $order WC_Order Object
*/
public function add_transaction( $order ) {
if ( 'yes' === self::get( 'ga_enhanced_ecommerce_tracking_enabled' ) || 'yes' === self::get( 'ga_gtag_enabled' ) ) {
wc_enqueue_js( static::add_transaction_enhanced( $order ) );
} else {
wc_enqueue_js( self::add_transaction_universal( $order ) );
}
wc_enqueue_js( static::add_transaction_enhanced( $order ) );
}

/**
Expand Down Expand Up @@ -128,55 +124,6 @@ public static function get_product_identifier( $product ) {
return apply_filters( 'woocommerce_ga_product_identifier', $identifier, $product );
}

/**
* Generate Universal Analytics add item tracking code
*
* @param WC_Order $order WC_Order Object
* @param WC_Order_Item $item The item to add to a transaction/order
* @return string
*/
protected function add_item_universal( $order, $item ) {
$_product = version_compare( WC_VERSION, '3.0', '<' ) ? $order->get_product_from_item( $item ) : $item->get_product();

$code = "ga('ecommerce:addItem', {";
$code .= "'id': '" . esc_js( $order->get_order_number() ) . "',";
$code .= "'name': '" . esc_js( $item['name'] ) . "',";
$code .= "'sku': '" . esc_js( $_product->get_sku() ? $_product->get_sku() : $_product->get_id() ) . "',";
$code .= "'category': " . self::product_get_category_line( $_product );
$code .= "'price': '" . esc_js( $order->get_item_total( $item ) ) . "',";
$code .= "'quantity': '" . esc_js( $item['qty'] ) . "'";
$code .= '});';

return $code;
}

/**
* Generate Universal Analytics transaction tracking code
*
* @param WC_Order $order WC_Order object
* @return string Add Transaction tracking code
*/
protected function add_transaction_universal( $order ) {
$code = "ga('ecommerce:addTransaction', {
'id': '" . esc_js( $order->get_order_number() ) . "', // Transaction ID. Required
'affiliation': '" . esc_js( get_bloginfo( 'name' ) ) . "', // Affiliation or store name
'revenue': '" . esc_js( $order->get_total() ) . "', // Grand Total
'shipping': '" . esc_js( $order->get_total_shipping() ) . "', // Shipping
'tax': '" . esc_js( $order->get_total_tax() ) . "', // Tax
'currency': '" . esc_js( version_compare( WC_VERSION, '3.0', '<' ) ? $order->get_order_currency() : $order->get_currency() ) . "' // Currency
});";

// Order items
if ( $order->get_items() ) {
foreach ( $order->get_items() as $item ) {
$code .= self::add_item_universal( $order, $item );
}
}

$code .= "ga('ecommerce:send');";
return $code;
}

/**
* Returns a 'category' JSON line based on $product
*
Expand Down

0 comments on commit 1c54142

Please sign in to comment.