Plugin / Google Tag Manager for WordPress
Thomas GeigerDescription
Description
Google Tag Manager (GTM) is Google’s free tool for everyone to manage and deploy analytics and marketing tags as well as other code snippets
using an intuitive web UI. To learn more about this tool, visit the official website.
This plugin places the GTM container code snippets onto your wordpress website so that you do not need to add this manually.
Multiple containers are also supported!
The plugin complements your GTM setup by pushing page meta data and user information into the so called data layer.
Google’s official help pages includes more details about the data layer.
You can also add your Google Optimize container with the recommended code setup
Some parts of the plugin require PHP 5.6 newer.
PHP 7.0 or newer is recommended.
Please note that PHP 5.6 is nearing its end of life cycle thus it is recommended to upgrade. If you are not sure which version you are using, please contact
your hosting provider for support.
GTM container code placement
The original GTM container code is divided into two parts: The first part is a javascript code snippet that is added to the <head>
section of every page of the website. This part is critical to enable all features of GTM, and this plugin helps to place this part
correctly on your site. The second part is an iframe snippet that acts as a failsafe/fallback should users’ JavaScript be disabled.
Google recommends – for best performance – to place this code snippet directly after the opening <body> tag on each page.
Albeit not ideal, it will work when placed lower in the code. This plugin provides a code placement option for the second code snippet.
Inherently, WordPress does not offer a straight-forward solution to achieve this, however Yaniv Friedensohn showed me a solution
that works with most themes without modification:
http://www.affectivia.com/blog/placing-the-google-tag-manager-in-wordpress-after-the-body-tag/
I added this solution to the plugin, currently as an experimental option.
Sites using the Genesis Framework should choose the “Custom” placement option. No theme modification is needed for this theme
however, the Google Tag Manager container code will be added automatically.
Basic data included
- post/page titles
- post/page dates
- post/page category names
- post/page tag names
- post/page author ID and names
- post/page ID
- post types
- post count on the current page + in the current category/tag/taxonomy
- logged in status
- logged in user role
- logged in user ID (to track cross device behaviour in Google Analytics)
- logged in user email address (to comply with GTM terms of service do not pass this on to Google tags)
- site search data
- site name and id (for WordPress multisite instances)
Browser / OS / Device data
(beta)
- browser data (name, version, engine)
- OS data (name, version)
- device data (type, manufacturer, model)
Data is provided using the WhichBrowser library: http://whichbrowser.net/
Weather data
(beta)
Push data about users’ current weather conditions into the dataLayer. This can be used to generate weather-related
audience/remarketing lists on ad platforms and allows for user segmentation in your web analytics solutions:
- weather category (clouds, rain, snow, etc.)
- weather description: more detailed data
- temperature in Celsius or Fahrenheit
- air pressure
- wind speed and degrees
Weather data is queried from Open Weather Map. Depending on your websites traffic, additional fees may apply:
http://openweathermap.org/price
An (free) API key from OpenWeatherMap is required for this feature to work.
ipstack.com is used to determine the site visitor’s location. A (free) API key from IPStack.com is required for this feature to work:
https://ipstack.com/product
Media player events
(experimental)
Track users’ interaction with any embedded media:
- YouTube
- Vimeo
- Soundcloud
DataLayer events can be chosen to fire upon media player load, media is being played, paused/stopped and optionally when
the user reaches 10, 20, 30, …, 90, 100% of the media duration.
Tracking is supported for embedded media using the built-in oEmbed feature of WordPress as well as most other media plugins
and copy/pasted codes. Players injected into the website after page load are not currently supported.
Scroll tracking
Fire tags based on how the visitor scrolls from the top to the bottom of a page.
An example would be to separate “readers” (who spend a specified amount of time on a page) from “scrollers”
(who only scroll through within seconds). You can use these events to fire Analytics tags and/or remarketing/conversion tags
(for micro conversions).
Scroll tracking is based on the solution originally created by
- Nick Mihailovski
- Thomas Baekdal
- Avinash Kaushik
- Joost de Valk
- Eivind Savio
- Justin Cutroni
Original script:
http://cutroni.com/blog/2012/02/21/advanced-content-tracking-with-google-analytics-part-1/
Google Ads remarketing
Google Tag Manager for WordPress can add each dataLayer variable as a Google Ads remarketing custom parameter list.
This enables you to build sophisticated remarketing lists.
Blacklist & Whitelist Tag Manager tags and variables
To increase website security, you have the option to white- and blacklist tags/variables.
You can prevent specific tags from firing or the use of certain variable types regardless of your GTM setup.
If the Google account associated with your GTM account is being hacked, an attacker could easily
execute malware on your website without accessing its code on your hosting server. By blacklisting custom HTML tags
and/or custom JavaScript variables you can secure the Tag Manager container.
Integration
Google Tag Manager for WordPress integrates with several popular plugins. More integration to come!
- Contact Form 7: fire an event upon successful form submission
- WooCommerce:
- Classic e-commerce:
- fire an event when visitors add products to their cart
- capture transaction data to be passed to your ad platforms and/or Analytics
- capture necessary remarketing parameters for Google Ads Dynamic Remarketing
- Enhanced e-commerce (beta):
- implementation of Enhanced E-commerce
- Does not support promotions since WooCommerce does not have such a feature (yet)
- Does not support refunds
- Classic e-commerce:
Ratings
Rating breakdown
Details Information
Version
First Released
Total Downloads
Wordpress Version
Tested up to:
Require PHP Version:
Tags
Contributors
Languages
DIRECTORY DISCLAIMER
The information provided in this THEME/PLUGIN DIRECTORY is made available for information purposes only, and intended to serve as a resource to enable visitors to select a relevant theme or plugin. wpSocket gives no warranty of any kind, express or implied with regard to the information, including without limitation any warranty that the particular theme or plugin that you select is qualified on your situation.
The information in the individual theme or plugin displayed in the Directory is provided by the owners and contributors themselves. wpSocket gives no warranty as to the accuracy of the information and will not be liable to you for any loss or damage suffered by you as a consequence of your reliance on the information.
Links to respective sites are offered to assist in accessing additional information. The links may be outdated or broken. Connect to outside sites at your own risk. The Theme/Plugin Directory does not endorse the content or accuracy of any listing or external website.
While information is made available, no guarantee is given that the details provided are correct, complete or up-to-date.
wpSocket is not related to the theme or plugin, and also not responsible and expressly disclaims all liability for, damages of any kind, arising out of the use, reference to, or reliance on, any information or business listed throughout our site.