Thursday, April 12, 2012

банер с подменой ссылки на разных страницах

Тут на одном форуме пришлось сделать банер который бы отправлял кликнувшего на разные страницы в зависимости от того на какой странице форума на этот банер кликнули.
В серьезных системах типо AdRiver это легко настраивается в интерфейсе, но тут владельцы такую интеллектуальную систему подключать не стали - она денег стоит каждый месяц а реклама  пока что размещается нерегулярно.

Итак решено было написать простой костыль на JavaScript:

HTML
<!--код исходного банера-->
<a href="http://www.advertiser-site/kungi.php" alt="Кунги" id="ecoB"  target="_blank"><img src="http://mysite/banner.gif" border="0"></a>


JavaScript
<script type="text/javascript">
//исходная ссылка
var ecoLink = 'http://www.advertiser-site/kungi.php';

//варианты в завис. от мета-тегов страницы
//а именно ищем конкретные слова означающие марки и модификации машин
if (document.getElementsByTagName('meta')[3].content.indexOf('Mitsubishi') > -1){
ecoLink = 'http://www.advertiser-site/H-L200.php'
}
if ((document.getElementsByTagName('meta')[3].content.indexOf('TOYOTA') > -1) || 
(document.getElementsByTagName('meta')[3].content.indexOf('Tacoma') > -1) ||
(document.getElementsByTagName('meta')[3].content.indexOf('Toyota') > -1) ||
(document.getElementsByTagName('meta')[3].content.indexOf('Hilux') > -1)){
ecoLink = 'http://www.advertiser-site/H-HILUX.php';
}
if (document.getElementsByTagName('meta')[3].content.indexOf('Ford') > -1){
ecoLink = 'http://www.advertiser-site/H-80F.php';
}
if (document.getElementsByTagName('meta')[3].content.indexOf('китай') > -1){
ecoLink = 'http://www.advertiser-site/H-60A_80A.php';
}

//перезаписываем href у ссылки
document.getElementById('ecoB').href = ecoLink;
</script>