Integrate Google Tag Manager into your website.
Integrate Google Tag Manager into your website.
The great thing about Google Tag Manager (GTM) is that you are able to gather most of your tracking scripts in one place. You can then fire these scripts whenever you want, specified by the rules you set up. This sounds great, right? Well, it is. The only problem is that sometimes it takes some time to set these rules up. This implementation can either set a dataLayer variable in the dataLayer before the tag manager script is loaded or push an HTML event handler with the variable “event” to the dataLayer when a button is clicked. The problem is that this isn’t always that easy to do when you don’t have the ability/access to add the code to your site.
This is where the Metronet Tag Manager plugin shines. It unlocks the power of the dataLayer so you can easily set macros and firing rules on almost any element.
This plugin lets you:
Please note that for this plugin to work, a slight customization is needed. WordPress doesn’t let you load scripts straight after the opening tag, where the GTM script needs to be placed to work correctly. To fix this, you need to add <?php do_action( 'body_open' ); ?>
just after the <body>
tag, and that’s it.
Note, If you are using WordPress 5.2. and up, contact your theme developer and ask them to insert
<?php wp_body_open(); ?>
just after the opening body tag of their theme. Here is some code to show the theme developer to make it compatible with Metronet Tag Manager.
Please let us know if you have any feature requests or issues with this plugin.
Below are a couple of resources you might find valuable if you are new to Google Tag Manager
Official Google Tag Manager website
https://developers.google.com/tag-manager/
Tracking Google Analytics Events with Google Tag Manager
http://moz.com/ugc/tracking-google-analytics-events-with-google-tag-manager
Make Analytics Better with Tag Management and a Data Layer
http://cutroni.com/blog/2012/05/14/make-analytics-better-with-tag-management-and-a-data-layer/
If you choose to place variable values inside percentage signs (e.g., %replace_test%), you can filter these as necessary.
Here’s an example:
add_filter( 'gtm_replace_test', 'gtm_replace_test', 10, 3 ); function gtm_replace_test( $total_match, $match, $post_id ) { return "replaced with content"; }
The filter name is gtm_
with the suffix of replace_test
, since that content is inbetween the percentage signs.
header.php
to include <?php do_action( 'body_open' ); ?>
right after the opening <body>
tag.Note: if you are using WordPress 5.2. and up, contact your theme developer and ask them to insert
<?php wp_body_open(); ?>
just after the opening body tag of their theme. Here is some code to show the theme developer to make it compatible with Metronet Tag Manager.
For custom values, please see the filters section on GitHub.
Please refer to the Google Tag Manager FAQ.
Please refer to the Google Tag Manager API reference.
The data layer is an object that contains the information that you want to pass to Google Tag Manager. By setting up rules in Google Tag Manager, these variables can then be used to include the correct snippets or scripts – for example, when a certain button is clicked.
Yes. For custom values, please see the filters section on GitHub.