Web Personalization
The Web Personalization JavaScript API extends the platform’s automated personalization capability. It allows for event tracking and dynamic customization of a webpage. Additional capabilities: Custom Data Events, Dynamic Content, Get Visitor Data, Exclude Tag for Specific Bots.
- You must become a Web Personalization customer and have the RTP tag deployed on your site before using the User Context API.
- RTP does not support Account Based Marketing named account lists. ABM lists and code only pertain to the uploaded account lists (CSV files) managed within RTP.
Tag Setup
The RTP tag should be inserted at the header of the personalized page.
<!-- RTP tag -->
<script type='text/javascript'>
(function(c,h,a,f,e,i){c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
c[a].p=e;c[a].a=i;var g=h.createElement("script");g.async=true;g.type="text/javascript";
g.src=f;var b=h.getElementsByTagName("script")[0];b.parentNode.insertBefore(g,b)})
(window,document,"rtp","[rtp-js-cdn-url]","[pod-url]","[accountId]");
</script>
<!-- End of RTP tag -->
Account Setup
This method is called automatically on the tag level to set the relevant account id. You can set the account id when you wish to split between different domains.
var accountId = '561-HYG-937';
rtp('setAccount', accountId);
Event Sending Functions
This method sends a view event, which is used for page tracking. In the example below, the current page url is tracked as a visitor page view.
By passing the optional “page” parameter in this method, the current page can be overridden.
// Example for Default Page
rtp('send', 'view');
// Example for Overriding Default Page
var page = 'my-page?param=1';
rtp('send', 'view', page);
Exclude Tag for Specific Bots (User Agents)
To exclude specific browsers from sending data to the Web Personalization platform (in the case of identified bots), add the following IF statement to the tag script.
In the code example below, “Googlebot|msnbot” is used as bot examples to exclude from Web Personalization activities.
<!-- RTP tag -->
<script type='text/javascript'>
if(navigator.userAgent.match(/.(Googlebot|msnbot)./gi) == null){
(function(c,h,a,f,i){c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
c[a].a=i;var g=h.createElement("script");g.async=true;g.type="text/javascript";
g.src=f+'?rh='+c.location.hostname+'&aid='+i;var b=h.getElementsByTagName("script")[0];b.parentNode.insertBefore(g,b);
})(window,document,"rtp","//[cdn-pod-X-url]/rtp-api/v1/rtp.js","[accountId]");
rtp('send','view');
rtp('get', 'campaign', true);
}
</script>
<!-- End of RTP tag -->
JavaScript Calls Explained
Description of JavaScript that is added to a website when using Web Personalization and Predictive Content.
Core/Dependent JavaScript
*Used only if jQuery UI is missing dialog