Expand my Community achievements bar.

SOLVED

Tracking Dynamic URLs within Large Block of HTML from a Javascript Object

Avatar

Level 2

Hi,

 

I am pulling in large block of HTML (abcMeta.html) from a Javascript object. There are URLs within this block of html that I need tracking to be enabled for.

 

UPDATE: abcMeta.html is a variable with a long string of text (it's not a file)

 

Example of abcMeta.html:

 

<td style="padding-top:0;"><a href="https://www.google.com">Google</a></td>

 

How I am pulling in data from abcMeta:

 

N33RdtftXm.png

 

My delivery:

 

tgZraKbH3A.png

 

What is the best way to enable tracking for all URLs within the dynamic block of HTML?

 

I saw Adobe's documentation on how to track personalized URLs but those solutions seem to work only for individual URLs and not multiple URLs mixed in with the rest of the HTML.

 

Thanks!

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hi,

 

Use an @include directive for the file:

<%@ include file='file:///tmp/abcMeta.html' %>

 

If your url's are in a loop or similar, unroll it so the parser can see, with the protocol outside the js:

<% var urls = [['aol.com', 'AOL']]; %>
<% if (urls[0]) %><a href="https://<%= urls[0][0] %>"><%= urls[0][1] %></a>
<% if (urls[1]) %><a href="https://<%= urls[1][0] %>"><%= urls[1][1] %></a>

 

Thanks,

-Jon

View solution in original post

9 Replies

Avatar

Correct answer by
Community Advisor

Hi,

 

Use an @include directive for the file:

<%@ include file='file:///tmp/abcMeta.html' %>

 

If your url's are in a loop or similar, unroll it so the parser can see, with the protocol outside the js:

<% var urls = [['aol.com', 'AOL']]; %>
<% if (urls[0]) %><a href="https://<%= urls[0][0] %>"><%= urls[0][1] %></a>
<% if (urls[1]) %><a href="https://<%= urls[1][0] %>"><%= urls[1][1] %></a>

 

Thanks,

-Jon

Avatar

Level 2

Thanks Jon.

 

abdMeta.html is not a file, it's a variable. Would the <%@ include still work if it's a variable?

Avatar

Community Advisor

The way tracking works is if you want to use the ootb system, the content parser which populates nms:trackingUrl and the tracking metadata xml files has to be able to parse the urls, specifically the static text '<a href="protocol://'. OOTB solutions will be constrained to that, such as the unroll answer above. DIY has no constraints, but then you're diy'ing the whole hot glue flowerpot.

Avatar

Level 2
Thanks for sharing that context. I guess it's possible that I'm at a dead end as far as OOTB goes.

Avatar

Level 1

@Jonathon_wodnicki  Quick question here:-
What If I need to track links present  in variable that I have declared in delivery properties as below. My content comes via the below defined variable

 

anurags71391525_0-1582873718779.png

 

How can we we define the <%@include operation?