-
Notifications
You must be signed in to change notification settings - Fork 3
/
utms.html
59 lines (51 loc) · 3.34 KB
/
utms.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Tracking Events with Segment 2 </title>
<script>
!function(){var i="analytics",analytics=window[i]=window[i]||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","screen","once","off","on","addSourceMiddleware","addIntegrationMiddleware","setAnonymousId","addDestinationMiddleware","register"];analytics.factory=function(e){return function(){if(window[i].initialized)return window[i][e].apply(window[i],arguments);var n=Array.prototype.slice.call(arguments);if(["track","screen","alias","group","page","identify"].indexOf(e)>-1){var c=document.querySelector("link[rel='canonical']");n.push({__t:"bpc",c:c&&c.getAttribute("href")||void 0,p:location.pathname,u:location.href,s:location.search,t:document.title,r:document.referrer})}n.unshift(e);analytics.push(n);return analytics}};for(var n=0;n<analytics.methods.length;n++){var key=analytics.methods[n];analytics[key]=analytics.factory(key)}analytics.load=function(key,n){var t=document.createElement("script");t.type="text/javascript";t.async=!0;t.setAttribute("data-global-segment-analytics-key",i);t.src="https://cdn.segment.com/analytics.js/v1/" + key + "/analytics.min.js";var r=document.getElementsByTagName("script")[0];r.parentNode.insertBefore(t,r);analytics._loadOptions=n};analytics._writeKey="X4qkaLxOqyiIxJsi6pas3PzGKo0nrWQC";;analytics.SNIPPET_VERSION="5.2.0";
analytics.load("X4qkaLxOqyiIxJsi6pas3PzGKo0nrWQC");
analytics.page();
}}();
</script>
<script>
analytics.ready(function() {
// Step 1: Persist new campaign data (if available) into analytics.js storage
// Step 2: Enrich subsequent events with campaign data (via the event.context object)
analytics.addSourceMiddleware((payload, next) => {
const existingCampaign = analytics.storage.get('campaign');
if (existingCampaign) {
payload.obj.context.campaign = JSON.parse(existingCampaign);
} else {
if (payload.type === 'page' &&
payload.obj.context.campaign &&
JSON.stringify(payload.obj.context.campaign) !== '{}'
) {
analytics.storage.set(
'campaign',
JSON.stringify(payload.obj.context.campaign)
);
}
}
next(payload);
});
});
</script>
</head>
<body>
<button onclick="addUTMParameters()">Add UTM Parameters to the URL</button>
<button onclick="addSearchParameters()">Add Search Parameters to the URL</button>
<script>
function addUTMParameters() {
const params = "?utm_source=google&utm_medium=medium&utm_term=keyword&utm_content=some%20content&utm_campaign=some%20campaign&utm_test=other%20value";
window.location.href = window.location.origin + window.location.pathname + params;
}
function addSearchParameters() {
const params = "?search=test";
window.location.href = window.location.origin + window.location.pathname + params;
}
</script>
</body>
</html>