Javascript Tagging Library: Track Click
Overview
Instructions to send clicks information using the Javascript Tagging Library.
Step-by-step guide
Click events should be triggered when any result is selected by the user in the search results page. At this moment, the function trackClick should be executed.
trackClick
trackClick(terms, page, position, productId, title, url, options, callback)
Parameters
Parameter | Description | Data Type | Mandatory |
---|---|---|---|
terms | The query typed by the user | String | Yes |
page | The page number where user clicks | Integer | Yes |
position | The position in SERP of the product selected. | Integer | No* |
productId | The product ID of the selected result. | String | No* |
title | The product or result title. | String | Yes |
url | Destination URL, for example product detail page | String | Yes |
options | Object that may contain information about filters and other required data | Object | No* |
callback | Function that will be executed after sending data | Function | No |
*This parameters are not mandatory for the service but necessary for the statistics |
Options
The options object should contains additional parameters not passed as parameters in function call:
{ lang: LANGUAGUE, scope: SCOPE, store: STORE, catalog: CATALOG, section: SECTION, user: USER_ID, session: SESSION_ID }
Parameter | Description | Data Type | Mandatory |
---|---|---|---|
lang | Language identifier (es, en...) | String | No |
scope | Scope identifier (desktop, mobile, android app, iOS app...) | String | No |
store | Store value if it is required for the project | String | No |
catalog | Catalog value if it is required for the project | String | No |
section | Section value if it is required for the project | String | No |
user | UserID used for user based services | String* | No |
session | SessionID used for user based services | String | No |
*UserID should be an UUID identifier.
NOTE: The values for scope and lang will be provided by the Empathy Team.
The callback function receives an object with the following content. Also options parameters are included:
{ page: page, productId: productid, position: position, title: title, url: url, follow: false }
Code samples
<a href="http://MY_PRODUCT_URL.com" title="My product title" class="myLink" prodID="prod_id">My Test Link</a>
/** * 1 -> Capture click on the desired product * 2 -> Avoid default action (redirect to destination url) * 3 -> Execute trackClick function with the desired callback (including url redirection) */ jQuery('a#myLink').click(function(){ event.preventDefault(); var myURL = this.href; var title = this.title; var productId = this.getAttribute("prodID"); var options = { lang: LANGUAGUE, scope: SCOPE, store: STORE, catalog: CATALOG, section: SECTION, user: USER_ID, session: SESSION_ID }; empathyTAG.trackClick('test', 1, 3, productId, title, myURL, options, function(){ //Add your code here document.location.href = myURL; }); });
Related articles
-
Javascript Tagging Library: Track Conversion Clicks (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Wishlist Clicks (Empathy Knowledge Base)
-
Using Javascript Tagging Library - Deprecated (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Add2Cart Clicks (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Clicks (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Queries (Empathy Knowledge Base)
-
Using Javascript Tagging Library - 1.3 - Deprecated (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Checkout (Empathy Knowledge Base)
-
Javascript Tagging Library - Track Search (Empathy Knowledge Base)
-
Javascript Tagging Library - Track Browse (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Browse Add2Cart (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Browse Category (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Query (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Browse Product (Empathy Knowledge Base)
-
Javascript Tagging Library: Track Wishlist (Empathy Knowledge Base)