Спрашиваем и отвечаем по Wordpress-10

S
На сайте с 05.03.2015
Offline
27
#191

Привет, друзья помогите советом:

Нашел датинг сайт на WP, слив трафика на нем реализован по кнопке "Перейти в закрытый клуб" и слив идет на лендинг. Ссылка следующего содеражания:

<a href="http://site.ru/anketa" onclick="window.open;">ХХ</a>

После перехода по этой ссылке попадаешь на лендинг!

P.S. При первом переходе по ссылке открывается прелендинг (где нужно пройти мини тест (сколько лет и т.д.)) и потом попадаешь на сам лендинг реги. А при повторном переходе по этой ссылке открывается сразу лендинг.

Хочу реализовать так-же но что то не знаю как(

Пробовал создать в корне своего сайта файл anketa.php (где хотел разместить редирект), а на страницах сайта ссылку такого же рода:

<a href="http://site.ru/anketa" onclick="window.open;">ХХ</a>

но нечего не сработало - выкидывало на страницу с ошибкой 404.

Недорогие VDS'ки / Адалт разрешен (https://goo.gl/IGpWez)
Gerga
На сайте с 02.08.2015
Offline
94
#192
scod:
<a href="http://site.ru/anketa" onclick="window.open;">ХХ</a>

Это ссылка на страницу anketa (post_type=page), а не на anketa.php

S
На сайте с 05.03.2015
Offline
27
#193
Gerga:
Это ссылка на страницу anketa (post_type=page), а не на anketa.php

хм, я тоже предпологал что это post_type=page.

А как ее создать, просто из админки: http://joxi.ru/a2X3zgNCypXb6m ?

А как слив потом реализовать? Пробовал открыть его страницу слива через

view-source:site.ru/anketa

После небольшого ожидания открывается код лендинга,а не этой страницы.

Пробовал засунуть эту страницу (site.ru/anketa) в https://www.google.com/webmasters/tools/mobile-friendly - пишет что данная страница запрещена в robots.txt, хотя при его открытии видим следующее:

User-agent: *

Disallow: /wp-admin/

Sitemap: http://site.ru/sitemap.xml.gz
Gerga
На сайте с 02.08.2015
Offline
94
#194
scod:
хм, я тоже предпологал что это post_type=page.
А как ее создать, просто из админки: http://joxi.ru/a2X3zgNCypXb6m ?

как вариант, + сделать шаблон страницы в которой и будет редирект.


/*
Template Name: Редирект на анкету
*/
scod:
Пробовал засунуть эту страницу (site.ru/anketa) в https://www.google.com/webmasters/tools/mobile-friendly - пишет что данная страница запрещена в robots.txt, хотя при его открытии видим следующее:

Можно запретить индексацию и через meta тег


<meta name="robots" content="noindex,nofollow">
S
На сайте с 05.03.2015
Offline
27
#195
Gerga:
как вариант, + сделать шаблон страницы в которой и будет редирект.

/*
Template Name: Редирект на анкету
*/

А можно поподробнее пожалуйста как сделать редирект в созданной странице. И не понятно что это за комментарий в php, не силен в нем.

S
На сайте с 05.03.2015
Offline
27
#196
+ сделать шаблон страницы в которой и будет редирект.

Вернее что за шаблон страницы и как его сделать?

---------- Добавлено 14.02.2016 в 16:47 ----------

Gerga:


<meta name="robots" content="noindex,nofollow">

А может как то все же можно посмотреть код этой страницы? (закрытой от индексации)?

SeVlad
На сайте с 03.11.2008
Offline
1609
#197
goldyman:
Собственно, изучил достаточно мануалов,

Кроме основного, видимо: http://codex.wordpress.org/%D0%94%D0%BE%D1%87%D0%B5%D1%80%D0%BD%D0%B8%D0%B5_%D1%82%D0%B5%D0%BC%D1%8B

В нём понятным языком сказано где, что и как прописать. И даже что копировать.

goldyman:
Если я в точности скопирую тему

Всё копировать - бред. Тогда никакого смысла в дочке нет. Будет просто ещё одна тема. С не пофиксенными косяками.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
E
На сайте с 15.02.2016
Offline
11
#198

как в файле .htaccess можно обозначить: "старый пост" и "новый пост", чтобы сделать перенаправление?

G
На сайте с 23.07.2009
Offline
52
#199
Epiq:
как в файле .htaccess можно обозначить: "старый пост" и "новый пост", чтобы сделать перенаправление?

RewriteEngine On

RewriteBase /
RewriteRule ^old.html$ http://www.site.ru/new.html [R=301,L]
HX
На сайте с 14.02.2016
Offline
0
#200

Ребят подскажите почему может не обрабатываться вордпресом данный скрипт PHP. Отдельным файлом работает отлично в вордпрессе - никак. Перепробовал уже кучу плагинов Inline PHP, PHP Code for posts, Exec-PHP.

<?php
/*
PrintXML-Table ver 1.01 от 6 февраля 2012 года
Данный скрипт загружает курсы валют банков в формате XML с сайта
КОВ.РФ и выводит их в виде HTML таблицы. При этом загрузка новых
курсов с сайта КОВ.РФ происходит с использование кэширования.
Курсы загружаются с сайта, только если время модификации файла
kov_7701.xml на Вашем сервере устарело на определенную величину
($Reload_Period). В противном случае курсы извлекаются непосредственно
из файла kovt_7701.xml. Такое кэширование ускорит загрузку Вашей страницы.

Если периодическая загрузка XML файла 'kovt_7701.xml' с сайта KOVALUT.RU будет
осуществляться сторонними средствами, то функции:
Load_XML_From_Kov_RF()
Get_Kov_XML()
GetFileTime()
можно убрать из программы и еще нужно будет заменить строку:
$Kov_XML_Str = Get_Kov_XML();
на строку:
$Kov_XML_Str = file_get_contents('kovt_7701.xml');
*/
#Инициализируем глобальные переменные
#если Ваш сайт работает в кодировке UTF-8.
$Site_Encoding = 'UTF-8';
#если Ваш сайт работает в кодировке Windows-1251.
#$Site_Encoding = 'Windows-1251';
$Kov_City_Kod = '7701'; #Код города на сайте KOVALUT.RU
#$Reload_Period - время в секундах, по истечении которого необходимо
#обновлять файл kovt_7701.xml с курсами валют.
$Reload_Period = 300;
#$Work_Dir - Рабочий каталог. в нем сохраняются загруженный kovt_7701.xml
$Work_Dir = './';

Kov_Main();

#Kov_Main - отображает курсы валют на Вашем Сайте.
function Kov_Main()
{ #Загружаем XML с курсами валют в строкувую переменную $Kov_XML_Str
$Kov_XML_Str = Get_Kov_XML();
if ($Kov_XML_Str)
{ #Создаем XML элемент на основе загруженной выше строки
$XML = new SimpleXMLElement($Kov_XML_Str);
#Печатаем XML элемент, загруженный с сайта KOVALUT.RU
if ($XML)
{ #Print_Kov_XML($XML);
PrintTableInformer($XML);
}
}
}

# PrintTableInformerBody - Печатает тело таблицы с курсами обмена валют
#Аргуметы
#$XML = контейнер, в котором содержаться курсы валют банков для печати
function PrintTableInformerBody($XML)
{ global $StyleArr, $Site_Encoding;
for ($BI = 0; $BI < sizeof($XML->Bank); $BI++) # Перебираем все банки города
#для печати строк с курсами обмена валют
{ $BankName = ($Site_Encoding == 'UTF-8') ? $XML->Bank[$BI]->Name : mb_convert_encoding($XML->Bank[$BI]->Name, $Site_Encoding, "UTF-8");
$BGColor = ($BI % 2) ? '' : " background-color: {$StyleArr['grrow']};";
print "<tr align=\"center\" style = \"color: {$StyleArr['KursCol']};{$BGColor}\">\n";
if ($XML->Bank[$BI]->Url == '')
{ print "<td align=\"left\" style=\"padding-left: 5px; height: 30px;\">{$BankName}</td>\n";
}
else
{ print "<td align=\"left\" style=\"padding-left: 5px; height: 30px;\"><a style=\"color: {$StyleArr['BRefCol']};\" href=\"{$XML->Bank[$BI]->Url}\">{$BankName}</a></td>\n";
}
print "<td>{$XML->Bank[$BI]->USD->Buy}</td><td>{$XML->Bank[$BI]->USD->Sell}</td>\n";
print "<td>{$XML->Bank[$BI]->EUR->Buy}</td><td>{$XML->Bank[$BI]->EUR->Sell}</td>\n";
#Печатаем время обновления
print "<td style=\"padding-right: 5px; font-size: 12px;\">{$XML->Bank[$BI]->ChangeTime}</td>\n";
print "</tr>\n";
}
}

#PrintTableInformer печатает информер с табличкой в которой есть курсы
#всех банков города
function PrintTableInformer($XML)
{ global $StyleArr, $Kov_City_Kod, $Site_Encoding;
if ($Site_Encoding == 'UTF-8')
{ #Перекодировка не требуется. Просто загружаем переменные данными из XML
$CityName = $XML->City->Name;
$CityDate = $XML->City->Simple_Date;
}
else
{ #Перекодируем текстовые значения из кодировки UTF-8 в кодировку,
#установленную на сайте:
$CityName = mb_convert_encoding($XML->City->Name, $Site_Encoding, "UTF-8");
$CityDate = mb_convert_encoding($XML->City->Simple_Date, $Site_Encoding, "UTF-8");
}
print <<<END_OF_RECORD10
<div>
<table style="border-collapse: collapse;">
<tr>
<td align="center" colspan="6">
<h1 style="line-height: normal; font-style: italic; margin: 0px 0px 0px;">{$CityName}</h1>
{$CityDate}
</td>
</tr>
<tr> <td align="center" colspan="6">*</td> </tr>
<tr align="center" style="background-color: #e0e0e0;">
<th rowspan="2">Банк</th>
<th colspan="2">Доллар</th>
<th colspan="2">Евро</th>
<th rowspan="2">Время <br /> обновления</th>
</tr>
<tr align="center" style="background-color: #e0e0e0;">
<th>покупка*</th>
<th>продажа*</th>
<th>покупка*</th>
<th>продажа*</th>
</tr>
END_OF_RECORD10;
#Устанавливаем цвета в таблице для актуальных курсов
$StyleArr['grrow'] = '#c0c0c0'; #Цвет фона нечетного столбца
$StyleArr['b-k'] = '#e00000'; #Цвет цифр у лучших курсов
$StyleArr['BRefCol'] = '#00f'; #Цвет ссылки на банк
$StyleArr['KursCol'] = '#000'; #Цвет букв в строке с курсами банков
PrintTableInformerBody($XML->Actual_Rates); #Печатаем актуальные курсы
if (sizeof($XML->Not_Actual_Rates->Bank) >= 1)
{ #Если есть банки устаревшими курсами
print '<tr><th colspan="6">Ниже расположены устаревшие курсы валют:</th></tr>';
#Устанавливаем цвета в таблице для устаревших курсов
$StyleArr['grrow'] = '#e0e0e0'; #Цвет фона нечетного столбца
$StyleArr['b-k'] = '#808080'; #Цвет цифр у лучших курсов
$StyleArr['BRefCol'] = '#808080'; #Цвет ссылки на банк
$StyleArr['KursCol'] = '#808080'; #Цвет букв в строке с курсами банков
#Печатаем банки с неправильной датой курсов
PrintTableInformerBody($XML->Not_Actual_Rates);
}
print "<tr><td colspan=\"6\" align=\"center\">Источник курсов валют: <a style = \"color: #000000;\" href=\"http://kovalut.ru/index.php?kod={$Kov_City_Kod}\">KOVALUT.RU</a></td></tr>";
print "</table>\n</div>";
}

#Get_FileTime - возвращает время модификации файла если он существует.
#Возвращает 0, если файла не существует.
function GetFileTime($filename)
{ return ((file_exists($filename)) ? filemtime($filename) : 0);
}

#Get_Kov_XML - возвращает строку, содержащую XML c курсами валют
#Курсы загружаются из файла kovt_7701.xml, если время модификации
#файла еще не устарело. Если время модификации файла устарело -
#XML c курсами извлекается с сайта и сохраняется в файле kovt_7701.xml
function Get_Kov_XML()
{ global $Work_Dir, $Kov_City_Kod, $Reload_Period;
$buf =''; #В данную переменную будет загружен XML с курсами валют
#Создаем переменную с именем файла, в котором будет хранится
#XML с курсами валют:
$XML_File_Name = "{$Work_Dir}kovt_{$Kov_City_Kod}.xml";
#Проверяем, устарело ли время модификации файла kovt_7701.xml.
if (time() > (GetFileTime($XML_File_Name) + $Reload_Period))
{ #Сразу изменяем время модификации файла, чтобы минимизировать
#число лишних параллельных загрузок XML с сайта
touch($XML_File_Name);
#Загружаем XML c сайта KOVALUT.RU:
$buf = Load_XML_From_Kov_RF();
#Проверяем, удалось ли загрузить XML с сайта:
if ($buf)
{ #Загрузить с сайта получилось. Сохраняем XML с сайта в файл
file_put_contents($XML_File_Name, $buf);
}
}
if (!$buf)
{ #XML не был загружен с сайта (или не получилось или
#время модификации файла kovt_7701.xml еще не устарело).
#Загружаем XML с курсами валют из файла.
$buf = file_get_contents($XML_File_Name);
}
return($buf);
}

#Load_XML_From_Kov_RF - возвращает строку, содержащую XML c курсами
#валют с сайта KOVALUT.RU В случае, если правильные XML данные загрузить
#не удалось - возвращается пустая строка.
function Load_XML_From_Kov_RF()
{ global $Kov_City_Kod;
$Kov_Site = 'http://informer.kovalut.ru'; #Адрес сайта, с которого нужно загружать xml
#Расположение скрипта, возвращающего XML с курсами:
$Kov_XML_Loc = '/webmaster/xml-table.php?kod='.$Kov_City_Kod;
#$Kov_XML_Loc = '/webmaster/getxml.php?kod='.$Kov_City_Kod;
$buf =''; #В данную переменную будет считан XML с курсами валют
$OldErrorReportLevel = error_reporting(0);
#Открываем соединение с сайтом KOVALUT.RU по порту 80 и таймаутом 10 секунд.
$buf = file_get_contents($Kov_Site.$Kov_XML_Loc);
if (!$buf)
{ #Здесь можно обрабатывать ошибку, если не удалось установить
#соединение с сайтом KOVALUT.RU.
#echo "$errstr ($errno)<br />\n";
}
else
{ #$XMLTempl - шаблон правильных XML данных.
$XMLTempl = "\A<\\x3Fxml version=\"1.0\" encoding=\"utf-8\"\\x3F>\n<Exchange_Rates>.+?<\/Exchange_Rates>\Z";
#Проверяем, соответствуют ли загруженные данные - шаблону правильных XML данных
if (!preg_match("/$XMLTempl/is", $buf, $matches))
{ #Не удалось загрузить правильные XML данные. Возвращаем пустую строку.
$buf = '';
}
}
#Восстанавливаем изначальный уровень сообщений об ошибках
error_reporting($OldErrorReportLevel);
return($buf);
}
?>

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий