By 6 years ago in Coding

BBC External Link Tracking Script

Since my post about the BBC blocking the link juice on external links they seem to have come up with a very clever piece of JavaScript to get around the issue. It’s not on all the external links but it’s on some of them.

Links are still clean and there is nothing in the source code to indicate that they pass through a redirect. However when you click on any external link users are still sent through a tracking script.

This might be a very useful script for some of you who want to track links but still pass SEO benefits, the original is here. For a demo visit this page and click the “Movie Review Query Engine” link.

var LinkTrack = function ()
{
this.docLinks = document.links;
this.location= location.pathname;
}
LinkTrack.prototype.updateHrefs = function ()
{
var currlink, hostname, protocol, linktext;
if (!(!document.getElementsByTagName && document.all))
{
for (var i=0; i {
currlink = this.docLinks[i];
hostname = currlink.hostname ? currlink.hostname.toLowerCase() : "";
protocol = currlink.protocol.toLowerCase();
linktext = currlink.innerText;
if (protocol == 'http:' && (hostname != 'bbc.co.uk' && hostname.indexOf('.bbc.co.uk') == -1))
{
currlink.href = this.getNewUrl(currlink.href);
if (document.all && currlink.innerText.toLowerCase() == currlink.href.toLowerCase()) currlink.innerText = linktext;
}
}
}
}
LinkTrack.prototype.getNewUrl = function (destination)
{
var newUrl = '/go';
newUrl += this.location;
newUrl += (newUrl.substr(newUrl.length-1) == '/')? 'ext/_auto/-/' : '/ext/_auto/-/';
newUrl += destination;
return newUrl;
}
var myC = new LinkTrack();
myC.updateHrefs();

By Patrick Altoft. at 1:48PM on Wednesday, 11 Feb 2009

Patrick is the Director of Strategy at Branded3 and has spent the last 11 years working on the SEO strategies of some of the UK's largest brands. Patrick’s SEO knowledge and experience is highly regarded by many, and he’s regularly invited to speak at the world’s biggest search conferences and events. Follow Patrick Altoft on Twitter.

comments

  • http://www.strangelogic.com Jason Duke

    It is still and always has been, a huge security issue for the BBC. Do you think this will make them change it ?

    http://www.bbc.co.uk/go/redirect.shtml?javascript:alert(document.cookie)

  • http://www.zath.co.uk Zath

    Good to see that your post has perhaps had some good benefit at the BBC, were you the only person to highlight the issue at the time? Or the first to mention and it became a larger issue at the BBC?

  • http://www.top-web-templates.com Raphael@Top Web Templates

    Thanks a lot.

  • anon

    actually, there never was a problem, try going to one of the /go urls while changing your user agent to one of a search engine, e.g. ‘Googlebot/2.X (http://www.googlebot.com/bot.html)’.

    excuse my anonymity, but you might like to check facts.

  • http://www.agriya.com Jon Clone

    BBC is as strict as always, but this external link tracking script seem to solve the problem. I have always wanted to track links properly. This is a very post indeed, thanks!