Главная » LANDING PAGE » Мультилендинг на WordPress

Мультилендинг на WordPress

Мар 06 2017

В предыдущей статье мы рассмотрели варианты мультилендингов. А теперь непосредственно переходим к практической реализации для сайтов на WordPress.

Предположим, на нашу страничку идет народ по трем запросам: «создание landing page», «верстка landing page», «разработка landing page». Соответственно этим запросам будем менять заголовок. Для всех остальных запросов заголовок пусть будет «разработка интернет проектов под ключ».

Мультилендинг на WordPress

Запросы будем разделять с помощью UTM меток, которые можно сформировать в любом сервисе. Параметр utm_content соответствует конкретному запросу и позволяет однозначно определить запрос с помощью GET метода.

Скрипт на PHP имеет вид

<?php
$utm = $_GET['utm_content'];
if($utm == 'sozdanie') {
$multiTitle = 'Создание landing page';
}
elseif($utm == 'verstka') {
$multiTitle = 'Верстка landing page';
}
elseif($utm == 'razrabotka') {
$multiTitle = 'Разработка landing page';
}
else{
$multiTitle = 'Разработка интернет проектов под ключ';
}
?>

Теперь в нужное место страницы нам достаточно вставить такой код:

<h1><?php echo $multititle; ?></h1>

Если же нам надо помимо заголовка поменять и картинку, то поменяем функцию

<?php
$utm = $_GET['utm_content'];
if($utm == 'sozdanie') {
$multiTitle = 'Создание landing page';
$multiImage ='&lt;img src="http://myhelps.ru/img/icon-1.png"&gt;';
}
elseif($utm == 'verstka') {
$multiTitle = 'Верстка landing page';
}
elseif($utm == 'razrabotka') {
$multiTitle = 'Разработка landing page';
}
else{
$multiTitle = 'Индивидуальное обучение SEO с нуля';
}
?>

Вызывать картинку и заголовок будет код:

<?php echo $multiTitle; echo $multiImage; ?>

Для работы скрипта достаточно запустить исполняемый PHP  код в WordPress.

Это все хорошо, но некоторые плагины (например Visual Composer) настолько влияют на работу CMS, что не получится запустить PHP код ни с одним плагином.

Как быть? На помощь идет старый добрый JavaScript

<script type="text/javascript">
$(function () {
var utm='utm_content';
if( window.location.toString().indexOf(utm +'=') != -1) {
var number=(window.location.toString().substr(window.location.toString().indexOf(utm+'=')+ utm.length+1,50)).toLowerCase();
if( number.indexOf('&amp;') != -1) {
number=(number.substr(0,number.indexOf('&amp;')));
}
if(number == 'sozdanie') {$('.multititle').html('Создание landing page');}
if(number == 'verstka') {$('.multititle').html('Верстка landing page');}
if(number == 'razrabotka') {$('.multititle').html(Разработка landing page'');}
else {$('.multititle').html(Разработка интернет проектов'');}
}
});
</script>
<div class="container"> 

На тяжелом сайте может появиться некоторая задержка изменений. Если есть возможность сделать мультилендинг на PHP — делайте на PHP.
Усовершенствованный вариант js скрипта, который позволяет можно создать шаблоны для подмены на основе встречаемого слова (шаблоны определяются в переменной multi)

<div class="container"></div>
$(function() {
function getURLParameter(name) {
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null;
}utm=[];
$.each(["utm_source","utm_medium","utm_campaign","utm_term",'source_type','source','position_type','position','added','creative','matchtype'],function(i,v){
utm[v]=getURLParameter(v) || $.cookie(v);
$.cookie(v, utm[v], { expires: 365, path: '/' });
});// MULTI
var ab_title = "default";
if(utm['utm_term']){
multi=multi.split('\n');
multi=$.map(multi,function(v, i){
arr1=v.split(';');
r=new RegExp(arr1[0]);
return {reg: r,val: arr1[1]};
});
multi=$.grep(multi,function(v,i){
return utm['utm_term'].search(v.reg) > -1
});
if(multi[0]){
ab_title=multi[0].val;
var target = $('.multi'); //элемент для подмены
target.html(ab_title);
}
}
});

2 комментария »

Добавить комментарий

86 - столько SQL запросов к базе.
0,904225 - за столько сгенерировалась страница.
Политика конфиденциальности
Правила пользования сайтом