Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Сокрытие реальной ссылки
Частенько в интернете сталкиваешься с нежеланием посетителей нажимать на реферальные ссылки. Вплоть до копирования ссылки в строку браузера и удаления реф.части.
Предлагаю использовать следующие приемы, позволяющие пользователям не увидеть реальную ссылку:
1. Ссылка средствами JavaScript
Если уж вы ссылаетесь прямо на сайт партнерки, то можно слегка изменить код ссылки:
<a href="http://www.site.ru/" target="_blank"
onclick="this.href='http://www.site.ru/?refer=XX'">site.ru</a>
В этом случае, в статусной строке браузера будет показываться ссылка на http://www.site.ru/, а в момент клика по ней, она будет заменена на http://www.site.ru/?refer=XX' и после этого осуществлен переход. Правда, после этого на этом сайте при наведении ссылка будет уже с реф. частью
2. Создание отдельной странички
Для каждой реф ссылки создаете отдельную страничку. Сам редирект можно сделать несколькими способами.
Например, средствами PHP (страничка будет содержать только эту строчку).<?php header ("Location: http://www.site.ru/?refer=XX"); exit; ?>
Или средствами JavaScript (код будет располагаться внутри <head></head>, а внутри <body></body> можно сделать простую ссылку, на тот случай, если у пользователя отключена поддержка JS).
<script>
location.href="http://www.site.ru/?refer=XX";
</script>
Также можно обойтись простыми средствами HTML (код размещается внутри <head></head>).
<meta http-equiv="Refresh" content="0; URL=http://www.site.ru/?refer=XX">
Причем никто не мешает совместить последние два способа, на случай отключенного javascript.
3. С помощью .htaccess
В файле .htaccess пишете для всех реф.ссылок следующие строчки редиректа:
Redirect 301 /reklama.php http://www.site.ru/ref=xxx
При этом в анкоре ссылки вы указывете страницу на своем сайте:
<a href='/reklama.php'>xxxx</a>
Пользователь видит переход на страницу site.php внутри домена, а в браузере откроется http://www.site.ru/ref=xxx
4. Универсальный код JavaScript для всех ссылок
Если у Вас много страниц, как на этом сайте, и вас "напрягает" править все ссылки, как описано в п.1, Вы можете написать один универсальный блок кода, который нужно будет вызывать на всех страницах. Вот этот "волшебный код":
// задержка, чтобы успела полностью загрузиться страница и отработал DOM
window.setTimeout('oef()',500);
function oef(){// Цикл по всем ссылкам
for(i=0; i<document.links.length; i++)
if (document.links[i].hostname.indexOf('htmlweb.ru')<0){
document.links[i].target='_blank'; // все ссылки открывать в новом окне
pos=document.links[i].href.indexOf('/',10);
// если у ссылки есть ref-часть и нет обработки события onclick
if (pos>=0 && document.links[i].onclick==null){
// добавляю обработку события onclick
document.links[i].onclick=new Function('this.href="'+document.links[i].href+'";');
// удаляю у ссылки реферальную часть
document.links[i].href=document.links[i].href.slice(0,pos);
}}}
Вставьте этот код перед тегом </body> на всех страницах или в отдельный, подключаемый ко всем страницам внешний файл javascript.
В этом случае, в статусной строке браузера будет показываться ссылка на http://www.site.ru/, а в момент клика по ней, она будет заменена на http://www.site.ru/?refer=XX' и после этого осуществлен переход. Правда, после этого, при наведении ссылка будет уже с реферальной частью.
.
Прокомментировать/Отблагодарить