Февраль
8
2012


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

Вы наверняка уже знаете, что большинство блоггеров, зарабатывают на своих детищах, различными способами. Один из этих способов — продажа ссылок в статьях, которой я успешно пользуюсь. Я использую две биржи GoGetLinks и GetGoodLinks, цена ссылки на первой бирже зависит от тИЦ, на второй — от PR. За февраль я уже успел заработать $38. Но сейчас не об этом.

Речь пойдёт о второй бирже. Здесь у Вас есть шанс получить с молодого сайта до $10 за ссылку, т.к. PR каждой страницы разный. PR «морды» (главной страницы) обычно самый высокий. К примеру PR главной страницы моего блога уже 2 (снизился на 1 после апдейта), PR внутренних страниц от 0 до 2. Большая часть статей имеет PR равный 0 или 1, и только одна статья имеет PR=2. Но в WordPress есть страницы из облака тегов, PR которых почему-то в большей мере от 1 до 2, правда пользы от них никакой не было, до недавних пор. Мне на бирже предложили разместить ссылку на странице с PR=2 за $11. После этого я решил попробывать продать ссылку со страницы тега, и у меня всё получилось. Всё не так сложно, как может показаться на первый взгляд.

Первое, что нужно сделать — это добавить три функции, в файл functions.php Вашей темы.

function my_RegexpEscape($str)
{
    return preg_quote($str, '/');
}
function my_getpageurl($url, $n)
{
    if ($url == '/') {
        return $url;
    } else {
        if ($_SERVER['QUERY_STRING']) {
            $page = preg_replace(array('/^\//', '/\/?\?'.my_RegexpEscape($_SERVER['QUERY_STRING']).'$/'), array('', ''), $url) . '/';
        } else {
            $page = preg_replace(array('/^\//', '/\/?\??$/'), array('', ''), $url) . '/';
        }
        $arr = explode('/', $page);
        return $arr[$n-1];
    }
}
function print_link($n, $tag, $link, $description, $page = 0)
{
    if((my_getpageurl($_SERVER["REQUEST_URI"], $n) == $tag)
       && ($page == 0)
       && empty(my_getpageurl($_SERVER["REQUEST_URI"], $n+1))
    ) {
        printf('<div style="display:block;padding:10px;width:580px;">' . $description . '</div>', $link);
    } elseif (($page != 0)
              && (my_getpageurl($_SERVER["REQUEST_URI"], $n+2) == $page)
      ) { 
        printf('<div style="display:block;padding:10px;width:580px;">' . $description . '</div>', $link);
    }
}

Функция print_link имеет следующие входящие параметры: $n — уровень вложенности страницы, например страница http://stafox.ru/tag/css/ имеет уровень вложенности 2, а http://stafox.ru/contacts/ — 1. $tag — имя страницы. $link — html-ссылка. $decription — околоссылочный текст, место где нужно вставить ссылку указываем с помощью %s, $page — номер страницы, необязательный аргумент, по умолчанию равен 0, задаётся, если необходимо оставить ссылку, к примеру, на второй странице.
Второе — это создать файл links.php со следующим кодом:

<?php
$number++;
$link1='<a href="http://stafox.ru/tag/html/">лекции HTML</a>';
$description1='Вы решили выучить HTML? Сделать это быстро Вам помогут %s от Stafox\'a.';
if ($number == 1) {
    print_link(2, 'cpp', $link1, $description1);
}
?>

И поместить его в папку с темой.
Условие

if ($number == 1)

указывает, что ссылка будет выводится перед первым постом.

Последнее что остаётся, это заменить в файле archive.php код

<?php 
while (have_posts()) : the_post(); 
?>

на

<?php 
while (have_posts()) : the_post(); 
include("links.php"); 
?>

Теперь Вы можете продавать ссылки в категориях, в архивах и в тегах, как это делаю я на странице тега cpp.

Немного подправил функцию print_link(), теперь, можно разместить ссылку даже на второй странице тега или рубрики. В этом случае код будет выглядеть так:

$link="html-ссылка";
$description="текст слева от ссылки %s текст справа от ссылки";
if($number==1) print_link(2, "html", $link, $description, 2);

К этой записи 21 комментарий

  • Diam пишет:

    Но в WordPress есть станицы

    буковку пропустил =) Где ты подсмотрел регулярные выражения для такой задумки? Я думал ты отдыхаешь там, а ты работаешь! Молодца!

    • Stafox пишет:

      Буковку поправил, спасибо.
      А я всегда работаю.
      Первые две функции написал, когда создавал ЧПУ для сайта со ставками.

  • Andrey пишет:

    Скажите, а как можно вставить ссылку на номерованную страницу? Наприме страница номер 3 (номер пагинации) имеет PR1. Как с нее продать ссылку?

    • Stafox пишет:

      Предположим страница находится по адресу http://stafox.ru/page/3/
      Для этого пишем в файле links.php

      if($number==1) print_link(2, "3", $link1, $description1);

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

    • Stafox пишет:

      Подправил функцию, теперь можно размещать на определённых страницах тега.

    • Andrey пишет:

      Спасибо! Увидел ответ только спустя почти год)))

  • Electron пишет:

    «Сайт не прошел модерацию. Причина отклонения: Не указано.»

    • Stafox пишет:

      Это нормально. Я так полагаю проблема с GoGetLinks, у самого сайт взяли с 5-го раза, и то, после смены дизайна. Сколько не писал в службу поддержки — отвечали, что они не обязаны оглашать причину отклонения и тыкали в FAQ. Однако если брать в пример только то, что написано в их faq, то причин для отклонения — нет. Вот так.

      Каждые 20 дней продолжайте добавлять сайт на биржу. Ну и допиливайте сайт (дизайн, юзабилити, примочки там всякие)

  • Владимир пишет:

    Stafox, хочу поблагодарить за этот пост. Давно искал такое решение.
    Только у меня не совсем получается. Когда вставил в functions.php ваш код, на сайте появляется следующая ошибка

    Fatal error: Can’t use function return value in write context in /home/np12524/domains/domain.ru/public_html/wp-content/themes/amazing-grace/amazing-grace/functions.php on line 361

    На строке 361 находится этот кусок
    && empty(my_getpageurl($_SERVER["REQUEST_URI"], $n+1))

    Вы бы могли подсказать, в чём может быть проблема?

    • Stafox пишет:

      Приведите весь код функции, только не забудьте в тег php обрамить.

  • Владимир пишет:

    Прошу прощения, не совсем понял. Показать всё содержимое functions.php?

    • Stafox пишет:

      Ну, давайте все содержимое. Попробуем разобраться.

  • Владимир пишет:

    Чего я только не пробовал, всё равно ошибку выдаёт. К сожалению я владею только основами PHP, сильно в нем не разбираюсь, чтобы отыскать проблему.

    • Stafox пишет:

      А лучше высылайте свой functions.php на почту, попробую подправить.

      • Владимир пишет:

        На какой адрес?

        • Stafox пишет:

          Отправил письмо на Ваш адрес.

  • Владимир пишет:

    Если честно, мне непонятно, зачем добавлять или менять коды в сайте, чтобы размещать на нем ссылки?
    Разве не достаточно просто разместить ссылку в статье?
    И еще, это меня всегда интересовало, в продаже ссылок, если я правильно понимаю, ссылки должны быть индексируемыми. Получается, если все время продавать ссылки с сайта, то рано или поздно сайт попадет в бан и к яшке и к гоше.
    Тогда как получается что люди продают ссылки, при этом не попадая в бан, возьмем к примеру твой сайт, с него идет всего одна индексируемая внешняя ссылка, а ты пишешь, что уже некоторое время продаешь ссылки с сайта, следовательно, их должно быть больше.
    В общем или я чего-то недопонимаю в продаже ссылок с сайта, или же просто я тупой, а лыжи должны скользить по асфальту ))))

  • Евгений пишет:

    Отличная статья. Спасибо.
    Не раз об этом задумывался.
    Пойду пробовать

    • Stafox пишет:

      Спасибо. Сообщи о результате.

  • Олег пишет:

    Высший пилотаж по продаже ссылок, но обычно теги закрывают в robots.txt. Или биржам главное, чтобы nofollow не стоял?

    • Stafox пишет:

      Важен, поэтому мне пришлось не закрывать индексацию тегов и рубрик в robots.txt

Добавить комментарий для Stafox