Улучшаем размещение SAPE на форумах PHPBB

Прошёл тестовый переод работы нового метода размещения ссылочных блоков SAPE на многострадальном форуме.
Сейчас объясню в чём вообще заключается этот метод. Пообщавшись с тов. Forall с phpbbguru выяснил, что администрация SAPE высказала некое пожелание, о разнесении ссылочных блоков на форумах в разные места, чтобы поисковикам было сложнее определять сайты, с которых производится продажа, а следовательно и уменьшить вероятность попадания в непот (а вы уже слышали, что авто-непот постраничен?). После этого я и решил провести небольшую модернизацию способа размещения ссылок.
Теперь в футере ссылки можно расставлять так - как душе угодно, выбирая место и количество.
И, чтобы не нервировать честных зарегистрированных пользователей, ввел проверку на залогиненность - вошёл на форум под своим паролем - чистый блок ссылок, зашёл гостем (или если ты поисковик/краулер) - извольте наблюдать ссылки. Да, думаю это немного не честно и господа из Сапы за это по головке не погладят, но ведь мы же им не скажем? Так что тсссс…

Как и что нужно поменять, чтобы разместить ссылки в разных местах хедера/футера?

1. Открыть файл overall_header.tpl или overall_footer.tpl (хэдер и футер соответственно, думаю это понятно)
2. В нужных местах разместить блоки сапы. Читайте внимательно какие и как размещать.
Блок выглядет так {SAPEx}, где х - число ссылок, которое должно выводиться в этом месте. Т.е. если хочется, чтобы стояло 2 ссылки, то пишем {SAPE2}.
Учтите, что если на странице куплена всего 1 ссылка , то она выведется в первом блоке, а если ссылок больше, чем вы указали в числовых значениях, они всё равно будут выведены в последнем блоке {SAPEx}, какой бы вы x не указали.
3. Теперь открываем page_header.php или page_tail.php из директории include и, как и раньше, после строки global $do_gzip_compress; добавляем код

define('_SAPE_USER', 'ваш_длинный_но_важный_код');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();

4. Прокручиваем страницу вниз и перед строчкой

$template->pparse('overall_footer');

добавляем

if(($userdata['session_logged_in'] == 0) or (!isset($userdata['session_logged_in']))){
$footercode = file_get_contents($template->files['overall_footer']);
preg_match_all('#\{(SAPE([0-9]+))\}#is', $footercode, $varrefs);

for ($i=1; $ireturn_links(intval($varrefs[2][$i-1]));
	$template->assign_var($varrefs[1][$i-1], $sapelinks);
}

$template->assign_var($varrefs[1][$i-1], $sape->return_links());
}

надеюсь вам хватит воображения заменить footer на header, если вы решили размещать ссылки вверху

5. Проверяем.

Если хочется быть очень честными и показывать ссылки всем-всем-всем, то просто убираем первую строку

if(($userdata['session_logged_in'] == 0) or (!isset($userdata['session_logged_in']))){

и последнюю закрывающую скобку.


Да-да, знаю, что толку от этого не так много, как хотелось бы, потому что всё равно размещение ссылок ограничено верхом и низом форума, но как говорится “мы работаем над этим”. К тому же (идёя всё того же Forall), надо бы проверять длинну ссылок, чтобы не разъезжался дизайн и так далее.
В общем планов хватает. Подписывайтесь на RSS и следите за дальнейшими новостями.

Из той же оперы, так что прочти обязательно:

Метки: , , , , ,

6 комментариев на “Улучшаем размещение SAPE на форумах PHPBB”

  1. Футбол пишет:

    Спасибо, хоть я и не особо люблю форумы PHPBB

  2. Тут опалубка пишет:

    Как раз собираюсь открыть форум по монолитному строительству. И как раз рассматривал движок от phpBB.
    Спасибо за статью, думаю пригодится. :-)

  3. Tapac пишет:

    Тут опалубка, если будет нужна помощь, то не стесняйся - контактная информация на странице обо мне

  4. BUKA_07 пишет:

    Ой, спасибо за помощь, то что нужно!)))

  5. Евгений пишет:

    Может чего то недопонимаю, но как sape увидит ссылки, если они закрыты.

  6. Tapac пишет:

    Сапа отлично увидит ссылки, т.к. бот не является залогиненым юзером, а лишь обычным “гостем”.

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

Вы должны войти чтобы оставить комментарий.