|
Я расскажу, как преобразовать код сапы таким образом, чтобы рекламный блок на Вашем сайте вообще не показывался, если ссылок нет. Если непонятно, что я имею в виду – обратите внимание на этот блог. В сайдбаре в левой половине в самом низу на главной странице есть блок «реклама», где размещаются ссылки. На других страницах блока нет. Он появляется автоматически только если ссылки для этой страницы куплены в сапе.
Я решил написать эту статью, т.к. на многих сайтах видел подобные ошибки. Если бы я сделал не так, как здесь напишу, то мой блок «реклама» висел бы пустым на тех страницах, гды ссылок не купили.
Кроме того, открываются неограниченные возможности по редактированию самих ссылок. Например, можно вырезать весь текст, кроме ссылки, можно выводить ссылки не через разделитель, а списком, на новой строке. В общем, на что хватит фантазии. Но пока что о рекламном блоке :)
Итак, понятно, что для осуществления поставленной задачи нужно для начала узнать – пришли ли к нам ссылки из сапы. Делаем примерно как в прошлой статье, но чуть по-другому:
$a = $sape->return_links();
if (!empty ($a)) {}
Сначала мы «выводим» ссылки в переменную $a (а не на сайт, как обычно), после мы проверяем, является ли $a пустой (с помощью функции empty) и если не является, то выполняется код, заключенный в { и }.
Конечно, в фигурные скобки и нужно включать оформление блока для ссылок! Теперь то, что получается в итоге. У меня это выглядит так:
if (!defined('_SAPE_USER')){
define('_SAPE_USER', '.....');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
$a = $sape->return_links();
if (!empty ($a)){
?>
<br><br>
<div class="menu_block l">
<div class="title_menu_block">Реклама</div>
<?php echo $a; ?>
</div>
<?php
}
Теперь весь блок выводится только, если сапа отправляет нам какие-то ссылки.
Еще одно замечание: в предыдущей статье говорилось, как изменить код сапы так, чтобы поисковикам было сложнее определить наличие сапы на сайте. Я приведу здесь общий код для оформления блока и для его защиты, а так же (возможно, кто-то не поймет сам и ему пригодится), укажу кодировку вывода UTF-8.
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', '......');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
unset($o);
$a = $sape->return_links();
if (substr_count ($a, "dispenser") <= 0){
if (!empty ($a)){
?>
<br><br>
<div class="menu_block l">
<div class="title_menu_block">Реклама</div>
<?php echo $a; ?>
</div>
<?php
}
}
?>
Вот так. Теперь у нас защищенный блок ссылок, который не выводится вовсе, если ссылок нет. Удачи! :)
Оставьте свой комментарий
|
02.08.2008 в 3:13 пп
Советую проверять еще на возврат коммента (когда бот сапы индексирует страницы и проверяет расположен ли там код) или наличие тега а. Если html коммент идет только, а ссылок как таковых нет, то нет смысла выводить блок, нужно просто коммент этот напечатать.
02.08.2008 в 3:18 пп
Честно говоря, не понял что за «коммент». По поводу ссылок – так если ссылку не купили, там вообще ничего не будет.
02.08.2008 в 3:31 пп
Бот сапы (и многих других бирж) проверяет наличие кода на странице по html комменту <!– l564jksv85 –> (какой-то код там идет, вроде как индивидуальный для каждого акка). То есть если ссылок нет, а бот этого коммента не видит, то сапа кричит, что код не установлен на странице
02.08.2008 в 3:41 пп
Это хорошо когда рекламы нет на каждом повороте… раздражает….
02.08.2008 в 4:35 пп
VolCh, знаю такое. Я всегда считал, что это нужно только на стадии индексации кода. Насколько я могу судить – так и есть.
А вообще, вот как мне представляется алгоритм индексации.
Бот зашел на страницу. Отправил на сервер запрос – засунуть на эту страницу коммент. Коммент засунулся. Бот его проверил и удостоверился, что страница работает нормально.
И если посмотреть на то, что я предлагаю, становится понятно, что такой код тоже будет выведен на страницу, как и ссылки. Не выводится только вот та ошибка сервера, палящая сайт перед поисковиками.
Я правильно Вас понял?
03.08.2008 в 4:38 пп
рембрат она всех помоему раздражает)))
05.08.2008 в 12:52 дп
А у меня все ссылки ушли в eror так что нужно еще доработать )
05.08.2008 в 5:46 дп
fullseo, странно. У меня около недели все в порядке (как сделал это на сайте), новые ссылки тоже. Быть может не правильно установлен код?.. Показывайте, будем разбираться ;)
05.08.2008 в 1:20 пп
Тебе код показывать???7 здесь прям??
05.08.2008 в 3:32 пп
Можно на dimoning@inbox.ru, можно здесь. Закройте просто идентификатор и все ;) Никто ничего Вам не сделает :)
08.08.2008 в 2:20 дп
[...] ссылки не палились, я уже писал. Вот еще прочитал в блоге простого программиста как сделать так, чтобы при отсутствии проданных [...]
13.09.2009 в 11:35 пп
Я давно чтото типа этого придумал на новые сайты встраиваю. Думаю многие, кто знаком с php до этого додумались, просто не палят, как я :)