вторник, 21 февраля 2012 г.

Как сделать "Удерживающую" страницу

Как сделать "Удерживающую" страницу
Exit трафик - это трафик, уходящий с Вашего сайта. По сути - это все посетители Вашего сайта. Понятно, что рано или поздно посетители все равно уйдут с Вашего сайта:)
Но дело в том, что есть 2 типа посетителей. Первые его просто не смотрят(попали случайно, шрифт не понравился и т.д.).
Вторые сайт смотрят, пролистывают страницы и статьи, смотрят видео, может быть. 
Но есть вещь, которая объединяет оба типа посетителей - они все когда-то уходят с Вашего сайта. Возникает вопрос: а что мы можем с этого получить? 
На самом деле есть старая, как мир, стратегия получения контактных данных посетителя для последующей связи с ним. Но сначала нужно ответить на вопрос: из-за чего посетители покидают сайт и чем мы можем заинтересовать их? Конечно, полезной и качественной информацией, но при этом абсолютно бесплатно!

Ну и что мы можем сделать? А вот что. Многие, наверное, видели, что при попытке закрыть вкладку сайта появляется примерно вот такое окно:


И этим мы либо удерживаем посетителя на данной странице, либо(чаще всего) премещаем на страницу с бесплатной полезностью.

Разберем, как сделать такой PopUp. Есть 2 выхода:

1. Для сайтов на движке WordPress можно купить такой плагин, он стоит чуть больше 60 долларов( для Blogger такого нет).
2. Дочитать до конца мою статью, скопировать скрипт и установить его у себя.

Посмотреть демонстрационную страницу с удерживающим попапом у меня Вы можете, кликнув по ссылке: Демонстрация 'Удерживающего' PopUp

А теперь расскажу, как это сделать.
Сначала нужно скопировать у меня текст скрипта и вставить его у себя перед закрывающим тегом </body>.
Затем настроить скрипт по себя.
 Во-первых, нужно сделать ограничение по показам всплывающего окошка - это нужно, чтобы не раздражать наших постоянных посетителей, постоянно показывая им это окно. Регулируется это параметром if(get_cookie("popapnum"))<2. Здесь Вы поставите число, которое нужно Вам.
У меня - это четвертая строка.

Во-вторых, нужно написать свой рекламирующий текст: вместо слов 'ВАШ ТЕКСТ В ОКОШКЕ\n\n' вставьте текст, который будет показан во всплывающем окне. Здесь \n - это один перенос, \n\n - двойной перенос.

Ну, и в-третьих, нужно задать адрес странички переадресации, куда мы уйдем после нажатия кнопки "Остаться на этой странице".

Сам текст скрипта:
<script language="javascript">
function get_cookie(cookie_name) {var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );if(results) {return(unescape(results[2]))}else {return 0;}}
if(get_cookie("popapnum")<2) {
var x = get_cookie("popapnum");
var popapnum = ++x;
var cookie_date = new Date ( 2043, 01, 15 );
var exitsplashmessage = 'ВАШ ТЕКСТ В ОКОШКЕ\n\n ';
var exitsplashpage = 'АДРЕС СТРАНИЧКИ ДЛЯ ПЕРЕАДРЕСАЦИИ ПОСЛЕ ЗАКРЫТИЯ';
function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function() { if (oldonload) { oldonload(); }  func(); }}}
function addClickEvent(a,i,func) { if (typeof a[i].onclick != 'function') { a[i].onclick = func; } }
var theDiv = '<div id="ExitSplashDiv"  style="display:block; width:100%; height:100%; position:absolute; background:#FFFFFF; margin-top:0px; margin-left:0px;" align="center">';
theDiv = theDiv + '<iframe src="'+exitsplashpage+'" width="100%" height="100%" align="middle" frameborder="0"></iframe>';
theDiv = theDiv + '</div>';
theBody = document.body; if (!theBody) {theBody = document.getElementById("body"); if (!theBody) {theBody = document.getElementsByTagName("body")[0];}}
var PreventExitSplash = false;
function DisplayExitSplash(){ if(PreventExitSplash == false){ document.cookie = "popapnum="+popapnum; "expires=" + cookie_date.toGMTString(); window.scrollTo(0,0);  PreventExitSplash=true; divtag = document.createElement("div"); divtag.setAttribute("id","ExitSplashMainOuterLayer"); divtag.style.position="absolute"; divtag.style.width="100%"; divtag.style.height="100%"; divtag.style.zIndex="99"; divtag.style.left="0px"; divtag.style.top="0px"; divtag.innerHTML=theDiv; theBody.innerHTML=""; theBody.topMargin="0px"; theBody.rightMargin="0px"; theBody.bottomMargin="0px"; theBody.leftMargin="0px"; theBody.style.overflow="hidden"; theBody.appendChild(divtag); return exitsplashmessage; } }
var a = document.getElementsByTagName('A'); for (var i = 0; i < a.length; i++) { if(a[i].target !== '_blank') {addClickEvent(a,i, function(){ PreventExitSplash=true; });} else{addClickEvent(a,i, function(){ PreventExitSplash=false;});}}disablelinksfunc = function(){var a = document.getElementsByTagName('A'); for (var i = 0; i < a.length; i++) { if(a[i].target !== '_blank') {addClickEvent(a,i, function(){ PreventExitSplash=true; });} else{addClickEvent(a,i, function(){ PreventExitSplash=false;});}}}
addLoadEvent(disablelinksfunc);
disableformsfunc = function(){ var f = document.getElementsByTagName('FORM'); for (var i=0;i<f.length;i++){ if (!f[i].onclick){ f[i].onclick=function(){ PreventExitSplash=true; } }else if (!f[i].onsubmit){ f[i].onsubmit=function(){ PreventExitSplash=true; }}}}
addLoadEvent(disableformsfunc);
window.onbeforeunload = DisplayExitSplash;}
</script>

Вот, собственно, и все, что я хотел рассказать об этом скрипте. Скрипт, естественно, бесплатный.

6 коммент.:

Мария комментирует...

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

Николай комментирует...

Всегда рад помочь, Мария!

Вера комментирует...

Я тоже видела на некоторых сайтах такое окошко. Надо будет попробовать сделать.

Николай комментирует...

Попробуйте! На западных сайтах давно и многие применяют это метод.

Александр Малаш комментирует...

не работает! почему не знаю! может подскажите в чём дело?

Irina комментирует...

Спасибо, Николай! Скажите, картинку можно вставить в окно?

Отправить комментарий