Wordpress/Woocommerce
    • 4 Minutes to read
    • Dark
      Light

    Wordpress/Woocommerce

    • Dark
      Light

    Article summary

    The plugin provides basic tracking for WordPress and advanced e-commerce tracking for WooCommerce.

    It provides the following features:

    • loading the tiLoader, which is needed to start the tracking page and action requests.

    • load Smartpixel via GTM as an alternative to Mapp Tag Integration

    • providing a data layer in a window._ti object

    • in WooCommerce, the plugin also fires track requests when adding an item to the cart.

    • load Mapp Acquire tracking script

    If you want to use Google Tag Manager instead of Tag Integration, you can find all info here:  Google Tag Manager in conjunction with WordPress / Woocommerce

    Installation

    Learn how to install the Mapp Intelligence plugin in your WordPress instance.

    Installation via the WordPress UI

    Log in to WordPress as admin and go to your dashboard. Then click "Plugins" and "Add New" and search for "Mapp Intelligence". Once found, click the "Install Now" button.

    Manually Uploading the WordPress Plugin

    Download the plugin from the WordPress plugin website and unzip its content in your WordPress plugin directory, e.g. wp-content/plugins.

    Then, log in to WordPress as an admin, go to Plugins in the main menu and click "activate" under the Mapp Intelligence entry in Installed Plugins.

    Configuration

    After activating the Mapp Intelligence plugin in WordPress, you find the entry "Mapp Intelligence" under "Plugins" in the main menu of your dashboard.

    Option

    Description

    Mapp Intelligence Pixel Version

    Chose between V5 pixel (Tag Integration) and Google Tag Manager

    Tag Integration ID

    The Tag Integration ID is provided by Mapp.

    Tag Integration Domain

    For better data quality, you can book a custom responder domain. If you use the default responder, keep "responder.wt-safetag.com".

    Exclude keys

    The plugin will create a Javascript object in window context called _ti. You can find out more about the Datalayer section below. Here you can enter the name of keys you do not want to have in the _ti object. Separate multiple entries with a comma. By default, customFields is blacklisted - customFields stores the data provided by other plugins, so check carefully if you want to whitelist the entries in customFields by deleting the key from the text field.

    Exclude users

    Activate this checkbox if you do not want to track users who are logged in to the admin panel of your WordPress installation (e.g. to edit blog posts or product information). Traffic in the WordPress admin panel is never tracked. However, when previewing a page from there, tracking is activated by default.

    Mapp Acquire

    (optional) Paste the tracking code of your Mapp Acquire pixel here.

    Data layer

    The Mapp Intelligence Plugin creates an object called "_ti" in a global context. In Tag Integration, you can map the keys in the parameter section.

    For example, _ti.pageName stores the URL of the current page. To map this key as the name of the page, create a parameter like so:

    Then, in  your Mapp Intelligence plugin, map it under Page > Page name:

    Now all track requests will receive the name of the page from the _ti data layer object.

    The plugin automatically creates the following keys in the data layer object.

    General WordPress data

    key

    notes

    pageName

    URL without the HTTP(s) protocol URL parameters

    pageTitle

    Title of the page.

    language

    Language code.

    contentCategory

    Values can be page, post, product, etc.

    contentSubcategory

    Values can be single-page, single-post, category-post, etc.

    orderBy

    On archive pages only. "default" if no particular order is set.

    pageNumber

    On archive pages only.

    internalSearch

    On search result pages only: search term.

    numberSearchResults

    On search result pages only: the amount of search result as a string.

    taxonomies

    Object with taxonomies. By default, WordPress comes with two taxonomies: category and tags. Categories are sorted from lowest to the highest level, so if you'd want to map the lowest category level, you'd use "_ti.taxonomies.category[0]". If you'd want to map the second tag, you would use "_ti.taxonomies.post_tag[1]". Plugins and Themes might add additional taxonomies that will show up here if there are values available for the current post/page.

    customerId

    In case the user is logged in, here is the md5 hash of the email address.

    userRoles

    The array of user roles names.

    customFields

    This key is blacklisted by default. Here you can find data from your plugins and themes, and some of them might contain personnel data. That's why this key should only be whitelisted if you really need certain data from your plugins/themes in your data layer.

    Woocommerce product tracking

    key

    notes

    productName

    Human-readable title of the product.

    productCost

    Cost of the product.

    productId

    Woocommerce ID of the product.

    productSKU

    Product SKU.

    currency

    Currency code (ISO 4217).

    productQuantity

    Amount of products - only during order.

    shoppingCartStatus

    "view" on the single product page, and right before adding a product to basket from product lists. "add" when adding to basket, and "conf" after order.

    productSoldOut

    '1' in case the product is sold out.

    productCategory

    Highest level of product categories.

    productSubCategory

    2nd level of product categories.

    productCategories

    Array with all product category levels - in case you have more than two levels, you can use this. For example, if you want to map a level 3 category, you can do this with "_ti['productCategories'][2]". The Index is always one value lower than the level of the category.

    productAttributes

    Only for product variations: an object with product variation data.

    products

    Array with all products from product lists. Each object has the keys like a normal product (productName, productCost, etc.).

    pageRequestType

    Populated with value 'virtual' when adding a product to the basket via AJAX (product lists, related products...). The first one is a product view, the second one the add-to-basket. This way you never have products added to the basket without being viewed. Use this parameter to filter out views that have no 'real' view and just exist for the sake of data consistency.

    Woocommerce order tracking

    key

    notes

    orderId

    Woocommerce Order ID.

    totalOrderValue

    Order value, incl. tax and shipping.

    subtotalOrderValue

    Order value without tax and shipping.

    taxValue

    Tax of order.

    couponValue

    Value of a coupon, if available.

    shippingMethod

    Name of the shipping provider.

    shippingCost

    Shipping cost for the order.

    paymentMethod

    Name of the payment provider.


    Was this article helpful?