перенаправление с дорвеев на Sutra, код на javascript

Все вопросы касающиеся скрипта ТДС и системы покупки трафика TS пишите сюда. Ответы на вопросы тоже сюда.

Модератор: Begemot

Begemot
Site Admin
Сообщения: 1145
Зарегистрирован: Вс май 01, 2005 3:20 pm

перенаправление с дорвеев на Sutra, код на javascript

Сообщение Begemot » Чт ноя 24, 2005 4:42 pm

Эти данные устарели.
На данный момент Sutra умеет сама парсить поисковый рефер и брать из него ключевую фразу и имя поисковика.
Подробнее читайте в документации Sutra в раделе "код для размещения на дорвее"





схема перенаправления с поисковика на "пункт назначения" такая:

(поисковик)->(дорвей)->(Sutra)->(пункт назначения)

Нашей задачей является следующее:
1. на дорвее узнать искомое ключевое слово (независимо от поисковика)
2. перенаправить посетителя с дорвея на Sutra передавая в параметре искомое ключевое слово из п.1.

на javascript.

После тщетных попыток найти готовый javascript для большинства поисковиков, я написал его сам. Код претендует на самый короткий существующий :)
Вот он:

<script>
var r=document.referrer,t="",q;
if(r.indexOf("google.")!=-1)t="q";
if(r.indexOf("msn.")!=-1)t="q";
if(r.indexOf("yahoo.")!=-1)t="p";
if(r.indexOf("altavista.")!=-1)t="q";
if(r.indexOf("aol.")!=-1)t="query";
if(r.indexOf("ask.")!=-1)t="q";
if(t.length&&((q=r.indexOf("?"+t+"="))!=-1||(q=r.indexOf("&"+t+"="))!=-1))
window.location="http://powertraff.biz/tds/in.cgi?10&par ... lit("&")[0];
</script>


PS: копирование кода на форум или другое публичное место, разрешено только при наличии ссылки на этот топик :D
Последний раз редактировалось Begemot Пн май 19, 2008 9:35 pm, всего редактировалось 3 раза.

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Burzuy
Сообщения: 1
Зарегистрирован: Сб апр 29, 2006 2:17 am

Сообщение Burzuy » Сб апр 29, 2006 2:21 am

Часа два сидел парился так как вобще не знаю джаву после долгих проб и ошибок получилось доработать :)

<script language="JavaScript">
var r=document.referrer,t="",q;
if(r.indexOf("google.")!=-1)t="q";
if(r.indexOf("msn.")!=-1)t="q";
if(r.indexOf("yahoo.")!=-1)t="p";
if(r.indexOf("altavista.")!=-1)t="q";
if(r.indexOf("aol.")!=-1)t="query";
if(r.indexOf("ask.")!=-1)t="q";
if(t.length&&((q=r.indexOf("?"+t+"="))!=-1||(q=r.indexOf("&"+t+"="))!=-1))
{
window.location="http://domen.com/in.cgi?10&parameter="+ ... lit("&")[0];
}
else
{
var so="cash";
window.location="http://domen.com/in.cgi?10&parameter="+so;
}
</script>


Если запрос не определен отправляет по запросу указанному в so
Надеюсь правильно зделал :)

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Zulu
Сообщения: 19
Зарегистрирован: Чт июн 01, 2006 2:17 pm

Сообщение Zulu » Чт июн 01, 2006 2:23 pm

Вот еще вариант, позволяет видеть в статистике URL дора и поисковик с которого пришел серфер:

var r=document.referrer,u=document.URL,t="",q,se="gb";

if(r.indexOf("google.")!=-1){t="q";se="google";}
if(r.indexOf("msn.")!=-1){t="q";se="msn";}
if(r.indexOf("yahoo.")!=-1){t="p";se="yahoo";}
if(r.indexOf("altavista.")!=-1){t="q";se="altavista";}
if(r.indexOf("aol.")!=-1){t="query";se="aol";}
if(r.indexOf("ask.")!=-1){t="q";se="ask";}
if(r.indexOf("eureka.com.")!=-1){t="q";se="eureka.com";}
if(r.indexOf("lycos.com.")!=-1){t="query";se="lycos";}
if(r.indexOf("hotbot.com.")!=-1){t="MT";se="hotbot";}
if(r.indexOf("infoseek.com.")!=-1){t="qt";se="infoseek.com";}
if(r.indexOf("webcrawler.")!=-1){t="searchText";se="webcrawler";}
if(r.indexOf("excite.")!=-1){t="search";se="excite";}
if(r.indexOf("netscape.com.")!=-1){t="search";se="netscape";}
if(r.indexOf("mamma.com.")!=-1){t="query";se="mamma";}
if(r.indexOf("alltheweb.com.")!=-1){t="query";se="alltheweb.com";}
if(r.indexOf("northernlight.com.")!=-1){t="qr";se="northernlight.com";}
if(r.indexOf("rambler.ru.")!=-1){t="words";se="rambler.ru";}
if(r.indexOf("aport.ru.")!=-1){t="r";se="aport.ru";}
if(r.indexOf("yandex.ru.")!=-1){t="text";se="yandex.ru";}
if(r.indexOf("pingwin.ru.")!=-1){t="searchword";se="pingwin.ru";}
if(r.indexOf("www.ru.")!=-1){t="Str_Find";se="www.ru";}
if(r.indexOf("punto.ru.")!=-1){t="text";se="punto.ru";}
if(t.length&&((q=r.indexOf("?"+t+"="))!=-1||(q=r.indexOf("&"+t+"="))!=-1))
{
window.location="http://sutra.com/in.cgi?2&HTTP_REFERER= ... lit("&")[0];
}
else
{
var so="{fid}";
window.location="http://sutra.com/in.cgi?2&HTTP_REFERER= ... meter="+so;
}

Begemot , спасибо за терпение ;), софт просто отличный !

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Zulu
Сообщения: 19
Зарегистрирован: Чт июн 01, 2006 2:17 pm

Сообщение Zulu » Чт июн 01, 2006 2:40 pm

сорри, в строке:

var so="{fid}";

вместо {fid} можно указать любой кей по умолчанию, это у меня осталось от доргенерирования

будет вот так var so="casino";

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

whitegold
Сообщения: 2
Зарегистрирован: Пт июн 23, 2006 7:37 am

Сообщение whitegold » Пт июн 23, 2006 7:43 am

Спасибо парни! отличный скрипт. А как сделать чтобы результат этого скрипта, тоесть то уже куда средиректит сутра отккрывался прямо во фрейме на доре, тоесть чтоб у серфера не менялось в адресной строке ничего. хелп ми.. спасибо

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Begemot
Site Admin
Сообщения: 1145
Зарегистрирован: Вс май 01, 2005 3:20 pm

Сообщение Begemot » Пн июн 26, 2006 11:25 am

чуть позже напишу код
Последний раз редактировалось Begemot Ср июн 28, 2006 11:58 am, всего редактировалось 1 раз.

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

whitegold
Сообщения: 2
Зарегистрирован: Пт июн 23, 2006 7:37 am

Сообщение whitegold » Ср июн 28, 2006 7:17 am

отлично.. ждем с нетерпением.

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

rilian
Сообщения: 2
Зарегистрирован: Пт июл 28, 2006 11:15 am

Сообщение rilian » Пт июл 28, 2006 11:22 am

whitegold писал(а):Спасибо парни! отличный скрипт. А как сделать чтобы результат этого скрипта, тоесть то уже куда средиректит сутра открывался прямо во фрейме на доре, то есть чтоб у серфера не менялось в адресной строке ничего. хелп ми.. спасибо
Скажите пожалуйста, как это реализовать ? :roll: Аналогично, нужно отображать "ответ" SUTRы в том же самом окне (на той же странице), возможно без фрейма..

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Begemot
Site Admin
Сообщения: 1145
Зарегистрирован: Вс май 01, 2005 3:20 pm

Сообщение Begemot » Пт июл 28, 2006 12:20 pm

окей, я написал более короткий код с комментариями,
он дает возможность видеть в статистике по реферам
урл дорвея + поисковик
наиболее удобный вариант как по мне:

Код: Выделить всё

r=document.referrer;u=document.URL;t="";se="unknown";
k="phentermine"; // кейворд по-умолчанию (вставляется при генерировании дор-генератором):
function a(c,d,e){if(r.indexOf(c)!=-1){t=d;se=e;}}
a("google.","q","google");
a("msn.","q","msn");
a("yahoo.","p","yahoo");
a("altavista.","q","altavista");
a("aol.","query","aol");
a("ask.","q","ask");
a("eureka.com.","q","eureka.com");
a("lycos.com.","query","lycos");
a("hotbot.com.","MT","hotbot");
a("infoseek.com.","qt","infoseek.com");
a("webcrawler.","searchText","webcrawler");
a("excite.","search","excite");
a("netscape.com.","search","netscape");
a("mamma.com.","query","mamma");
a("alltheweb.com.","query","alltheweb.com");
a("northernlight.com.","qr","northernlight.com");
a("rambler.ru.","words","rambler.ru");
a("aport.ru.","r","aport.ru");
a("yandex.ru.","text","yandex.ru");
a("pingwin.ru.","searchword","pingwin.ru");
a("www.ru.","Str_Find","www.ru");
a("punto.ru.","text","punto.ru");
if(t.length&&((q=r.indexOf("?"+t+"="))!=-1||(q=r.indexOf("&"+t+"="))!=-1))k=r.substring(q+2+t.length).split("&")[0];
g="http://sutra.com/in.cgi?2&HTTP_REFERER="+encodeURIComponent(u)+";"+se+"&ur=1&parameter="+k;

// далее идут способы предоставления контента клиенту, раскомментируйте нужный способ
// 1) обычное перенаправление с дорвея:
window.location=g;

// 2) отображение ифрейма вместо перенаправления:
//document.write( "<iframe width=\"100%\" height=\"100%\" src=\""+g+"\"></iframe>" );

если дор не рассчитан на русскую аудиторию, то можно укоротить код удалив строки с русскими поисковиками

не забудьте заменить
http://sutra.com/in.cgi
на ваш собственный урл сутры

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Begemot
Site Admin
Сообщения: 1145
Зарегистрирован: Вс май 01, 2005 3:20 pm

Сообщение Begemot » Пт июл 28, 2006 12:58 pm

без фрейма вообще реализуется вставлянием javascript'ом

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Mann
Сообщения: 1
Зарегистрирован: Ср июн 28, 2006 5:21 am
Контактная информация:

Сообщение Mann » Пт авг 04, 2006 1:12 pm

подскажите плз, как этот скрипт модифицировать таким образом чтобы редирект на фид шел через заданный параметр ($parameter), а в статистике (табл. Referers) отображалась такая строка

www.url-dora.com/tralala/phentermine.ht ... hentermine

где buy+cheap+phentermine это запрос, который задал юзвер на поисковике.

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Begemot
Site Admin
Сообщения: 1145
Зарегистрирован: Вс май 01, 2005 3:20 pm

Сообщение Begemot » Пт авг 04, 2006 1:48 pm

Mann писал(а):подскажите плз, как этот скрипт модифицировать таким образом чтобы редирект на фид шел через заданный параметр ($parameter), а в статистике (табл. Referers) отображалась такая строка

www.url-dora.com/tralala/phentermine.ht ... hentermine

где buy+cheap+phentermine это запрос, который задал юзвер на поисковике.
нужно вместо строки

Код: Выделить всё

g="http://sutra.com/in.cgi?2&HTTP_REFERER="+encodeURIComponent(u)+";"+se+"&ur=1&parameter="+k;
прописать

Код: Выделить всё

g="http://sutra.com/in.cgi?2&HTTP_REFERER="+encodeURIComponent(u)+";"+se+";"+k.split("+").join("%20").split("%20").join("%2B")+"&ur=1&parameter=заданный_параметр";
Последний раз редактировалось Begemot Вс авг 06, 2006 9:51 pm, всего редактировалось 1 раз.

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Kosmos
Сообщения: 2
Зарегистрирован: Сб авг 05, 2006 2:03 pm
Контактная информация:

Сообщение Kosmos » Сб авг 05, 2006 2:17 pm

Хелп плз, я в яве не силен :-))! Я использую для передачи реферера строчку вида:

Код: Выделить всё

window.location="http://sutra.com/in.cgi?2&HTTP_REFERER="+se+";"+r.substring(q+2+t.length).split("&")[0]+";"+u+"&ur=1&parameter="+escape(top.document.location);
Если "+r.substring(q+2+t.length).split("&")[0]+" односложный запрос то все ок, в админке имеем реферер:

Код: Выделить всё

google;porn;http://www.ref-url.com
но при двухсловном и более запросе ( т.е. присутствует пробел ) например "free porn" реферер в админке имее вид:

Код: Выделить всё

google;free
т.е. режет по пробелу, помогите плиз решить трабл.

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Begemot
Site Admin
Сообщения: 1145
Зарегистрирован: Вс май 01, 2005 3:20 pm

Сообщение Begemot » Вс авг 06, 2006 10:12 pm

Mann, я отредактировал так как нужно было, смотри выше.

Kosmos, юзай строчку

Код: Выделить всё

window.location="http://sutra.com/in.cgi?2&HTTP_REFERER="+se+";"+r.substring(q+2+t.length).split("&")[0].split("+").join("%20").split("%20").join("%2B")+";"+u+"&ur=1&parameter="+escape(top.document.location);
при этом пробелы будут заменяться на "+" что, думаю, вполне устроит :)

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Kosmos
Сообщения: 2
Зарегистрирован: Сб авг 05, 2006 2:03 pm
Контактная информация:

Сообщение Kosmos » Пн авг 07, 2006 7:39 am

Begemot большое спасибо ! С "+" устроит более чем :)

Ссылка:
BBcode:
HTML:
Скрыть ссылки на пост
Показать ссылки на пост

Ответить