Skip to content

Instantly share code, notes, and snippets.

@cartpauj
Last active January 17, 2024 22:11
Show Gist options
  • Select an option

  • Save cartpauj/e9e06cb47ee41dd2d33068595ece7bad to your computer and use it in GitHub Desktop.

Select an option

Save cartpauj/e9e06cb47ee41dd2d33068595ece7bad to your computer and use it in GitHub Desktop.
Google eCommerce Tracking for MemberPress Thank You Pages
<?php
//PASTE THIS CODE IN A PLUGIN LIKE My Custom Functions (RECOMMENDED) OR IN YOUR THEME'S functions.php FILE
//THIS ASSUMES YOU HAVE THE GOOGLE ANALYTICS JAVASCRIPT INCLUDED ALREADY
function echo_ga_tracking_script() {
if(isset($_GET['membership']) && isset($_GET['trans_num'])) {
$txn = MeprTransaction::get_one_by_trans_num($_GET['trans_num']);
if(isset($txn->id) && $txn->id > 0) {
//Echo the script to the HTML <head>
?>
<script type="text/javascript">
ga('require', 'ecommerce', 'ecommerce.js');
ga('ecommerce:addTransaction', {
id: <?php echo $txn->trans_num; ?>, // Transaction ID - this is normally generated by your system.
affiliation: 'ReputationStacker', // Affiliation or store name
revenue: <?php echo $txn->total; ?>, // Grand Total
shipping: 0, // Shipping cost
tax: <?php echo $txn->tax_amount; ?>
}); // Tax.
ga('ecommerce:addItem', {
id: <?php echo $txn->trans_num; ?>, // Transaction ID.
sku: '', // SKU/code.
name: <?php echo urldecode($_GET['membership']); ?>, // Product name.
category: '', // Category or variation.
price: <?php echo $txn->amount; ?>, // Unit price.
quantity: 1
});
ga('ecommerce:send');
</script>
<?php
}
}
}
add_action('wp_head', 'echo_ga_tracking_script');
@cartpauj

cartpauj commented Dec 29, 2016

Copy link
Copy Markdown
Author

It looks like if you're using Google Analytics by Monster Insights plugin, you'll need to do this first: https://www.kathirvel.com/yoast-google-analytics-reassign-gatracker-to-ga/

Then you can use the following...this is NOT TESTED though.

<?php
//PASTE THIS CODE IN A PLUGIN LIKE My Custom Functions (RECOMMENDED) OR IN YOUR THEME'S functions.php FILE
function echo_ga_tracking_script() {
  if(isset($_GET['membership']) && isset($_GET['trans_num'])) {
    $txn = MeprTransaction::get_one_by_trans_num($_GET['trans_num']);
    if(isset($txn->id) && $txn->id > 0) {
      //Echo the script to the HTML <head>
      ?>
        <script type="text/javascript">
          ga('require', 'ecommerce');

          ga('ecommerce:addTransaction', {
            'id': '<?php echo $txn->trans_num; ?>',                     // Transaction ID. Required.
            'affiliation': 'YOUR BLOG NAME',   // Affiliation or store name.
            'revenue': '<?php echo $txn->total; ?>',               // Grand Total.
            'shipping': '0',                  // Shipping.
            'tax': '<?php echo $txn->tax_amount; ?>'                     // Tax.
          });
          
          ga('ecommerce:addItem', {
            'id': '<?php echo $txn->trans_num; ?>',                     // Transaction ID. Required.
            'name': '<?php echo urldecode($_GET['membership']); ?>',    // Product name. Required.
            'sku': '<?php echo $txn->product_id; ?>',                 // SKU/code.
            'category': 'Website Subscription',         // Category or variation.
            'price': '<?php echo $txn->amount; ?>',                 // Unit price.
            'quantity': '1'                   // Quantity.
          });
          
          ga('ecommerce:send');
        </script>
      <?php
    }
  }
}
add_action('wp_head', 'echo_ga_tracking_script', 999999);

@WaskiWabit

Copy link
Copy Markdown

Thanks

@daniowensSEO

Copy link
Copy Markdown

@cartpauj, Is the code for mepr-ecommerce.php up to date? I am using MemberPress and would like to use this code to track eCommerce in Google Analytics. Thanks!

@etiennefdayer

Copy link
Copy Markdown

@dannanelli. Did you manage to add it?

@cartpauj

Copy link
Copy Markdown
Author

This is no longer up to date with GA4...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment