Установка кода SAPE на phpbb 3.1.1

25.11.2014 2 Автор Phantom

Поскольку великомудрые разработчики в новой версии неслабо перепилили движок форума, то закономерно встал вопрос как поставить код Sape на phpbb3.1. Памятка дабы не забыть:

0. Скачиваем с сайта сапы новый код.
1. Открываем файлы index.php, viewforum.php и viewtopic.php.
2. В самое начало добавляем код:
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'сюда копипастнуть ваш ид');
}
require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
$o['multi_site'] = true; //это если у вас несколько сайтов
$o['charset'] = 'utf-8';
$sape = new SAPE_client($o);
unset($o);
$sapeLinks = $sape->return_links();

4. Ищем строку:
$template->assign_vars(array(
Там таких несколько, нужна та где много всяких разных присвоений массиву. После неё вставляем:
'SAPE_LINKS' => $sapeLinks,
5. В нужном месте шаблона добавляем:
{SAPE_LINKS}
6. Чистим кэш.

Если хочется выводить в разных местах и разное количество ссылок, то соответственно:

$sapeLinks1 = $sape->return_links(2);
$sapeLinks2 = $sape->return_links(2);
$sapeLinks = $sape->return_links();

и
'SAPE_LINKS1' => $sapeLinks1,
'SAPE_LINKS2' => $sapeLinks2,
'SAPE_LINKS' => $sapeLinks,

и
{SAPE_LINKS1}
{SAPE_LINKS2}
{SAPE_LINKS}

Справедливости ради надо отметить, что это не особо кошерный способ, ибо идеология новой версии не подразумевает правку кода, однако на данный момент нет расширения прямо реализующего этот функционал. Так что пока ждём и используем грязные хаки.

Поделиться в: