Quantcast
Channel: s_code.js – Web Analytics for Developers
Viewing all articles
Browse latest Browse all 46

With DTM you don’t need Plugins! – Part 2

$
0
0

Let’s continue on the journey and replace one more plugins with DTM goodness.

I even get to introduce an almost hidden feature!

getVisitNum

I was slightly disappointed last time because I couldn’t find an easy way of replacing getVisitNum. This plugin keeps track of how often someone comes to the site. Very useful for segmentation purposes.

The plugin really does two things: maintain the number of visits in a cookie (which means increasing the number at the start of a visit), and providing the current number so we can track it into a “variable” of our choice.

I knew that reading the visit number from a cookie was easy: just make a Data Element based on the cookie.

But would I have to add some custom logic to manage the visit number? Where exactly?

Turns out the answer is no! I don’t have to! DTM provides everything I need, although it is hidden away a little bit.

When you make a rule, you can add a condition based on the number of visits. Oh. So DTM actually does keep track of visits for me? Cool!

Can I read that value somewhere? I couldn’t find it.

Then my colleague Anna pointed me the right way: the visit number is only handled by DTM if I actually have a rule with a condition based on “Sessions” (aka Visits) in my setup. Otherwise it doesn’t care.

But if I do have a rule with such a condition, it will write a cookie (“_sdsat_session_count”)! Heureka!

So, let’s set up a rule with a condition, like so:

[Screenshot]

DTM Rule with Session-baed Condition

Now if we push that live or use the “DTM Switch plugin” to check the staging version, we should see a new cookie on our site.

[Screenshot]

DTM Session Count Cookie

Success!

All we need now is a Data Element that reads that cookie:

[Screenshot]

Data Element for Visit Number

Use that Data Element with the Analytics variable that you currently use with the getVisitNum plugin:

[Screenshot]

Assigning Data Element to prop33

And Bob’s your uncle!

Bonus

For added bliss, you could add custom Javascript that reads the existing cookie and bootstraps the new one, so the visit number wouldn’t start at 1 for everyone.

In my s_code.js file, I was assigning the prop like so:

[Screenshot]

Original Call to getVisitNum in s_code.js

No parameter on the getVisitNum plugin means that the plugin will store the visit number in a cookie called “s_vnum”.

So all we need to do is read that value from the “s_vnum” cookie and write it into the “_sdsat_session_count” cookie before DTM uses that cookie for the first time to populate our variable.

My guess would be that placing such code into a sequential Javascript block at page top should work.

Don’t forget to delete the “s_vnum” cookie! You want to transfer the visit number once only.


Filed under: Integration, Javascript, Plugins Tagged: data layer, DTM, javascript, plugins, s_code.js

Viewing all articles
Browse latest Browse all 46

Latest Images

Trending Articles



Latest Images