Наболевшие вопросы по sape,mainlink и прочим биржам

Понимаю, что сто раз обсуждалось, но все меняется, может кто-то выдаст конкретные инструкции, по подключению к livestreet 1.0.2, просто информация разрозненная, да и устаревшая. Ну и для ламеров типо меня не всегда понятная, заранее спасибо, ну и звиняйте если напрягаю ))

Для sape например я добавил в footer.tpl:
{php}
define('_SAPE_USER', '------------');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
unset($o);
return $sape->return_links();
{/php}

Ошибок вроде не выдает, но и при добавлении сайта на биржу, не находит его, хотя файл с базой данных создаётся в папке.
Ну как смог пояснил, простите уж. Просто заинтересовал livestreet меня, dle уже надоело).

36 комментариев

avatar
{php}

тег не работает больше в 1.0
avatar
http://livestreetcms.com/addons/view/512/ у меня этот модуль стоит
avatar
научитесь отвечать на комментарии ибо будете ждать очень долго ответов на свои вопросы.

можете включить отображение тестовых комментариев. см. справку сапы.
avatar
Включал тестовые, не выводит ничего
avatar
ну тогда все сначала livestreet.ru/blog/questions/14361.html
avatar
Итак, как это сделано у меня:

1. файл ~/engine/lib/external/Smarty/libs/plugins

В этой директории заводим файлик с именем function.sape.php. В нём пишем непосредственно код. Выглядит он примерно так:
<?php
  function smarty_function_sape($params,&$smarty)
  {
    define('_SAPE_USER', 'ваш_длинный_код');
    require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
    $o['charset'] = 'UTF-8';
    $sape = new SAPE_client($o);
    unset($o);
    return $sape->return_links();
  }
?>


2. /templates/skin/new/sidebar.tpl

Чтобы Sape появилась в сайдбаре добавим в его конец просто вызов {sape}. С равным успехом это можно добавлять и в любой другой шаблон.
avatar

avatar
что-то не так сделали потому что у меня все так:
avatar
В том то и дело, что не разберусь, просто способ описанный выше, я уже пробовал, и не понятно, что за ошибка
avatar
сам код сапы видимо кривоват в корневой папке
последняя версия залита?
avatar
Да, вчера заливал, на dle все стоит нормально
avatar
проверить всё еще раз
и в поиск на форуме сапы по ошибке
avatar
Не туда функцию с кодом smarty_function_sape положили. Движок не можт её вызвать.
avatar
/public_html/vh/engine/lib/external/Smarty/libs/plugins
avatar
У вас в начале файла какие-то символы есть, до
<?php
avatar
нет
avatar
На скрипшоте же видно, что на экран выплюнут приведенный тут код.
Но перед ним еще пара непечатных символов.

Но раз нет, то нет.
avatar
Блин простите меня идиота, вроде заработало, я при написании function.sape.php кодировку левую поставил ((((
avatar
Разве код у САПЫ не такой?
<?php
    global $sape;
    if (!defined('_SAPE_USER')){
        define('_SAPE_USER', 'длинный код');
    }
    require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
    $sape = new SAPE_client();
    ?>


Если вставляю Ваш код, то не вводится ничего. Если вставляю код который предлагает САПА у себя на сайт, то выходит ошибка
Fatal error: Call to undefined function smarty_function_sape()
avatar
не выводится нечего из-за того что на странице возможно нету ссылок.
avatar
САПА говорит о наличии 2х ссылок.
Может чего-то не понимаю, впервые работаю с сапой
avatar
вы смотрите конкретно на какой странице ссылки они поставили.
avatar
Вот теперь все нормально!
Я думал что ссылки сквозные будут на всех страницах сайта :)

Спасибо за подсказку!
avatar
Fatal error: Call to undefined function smarty_function_sape()

Ошибка равно такая же, как и у автора темы.
Внимательно смотрите в файл с описание функции smarty_function_sape().
avatar
Код вставки должен быть как у wasq05 :
<?php
  function smarty_function_sape($params,&$smarty)
  {
    define('_SAPE_USER', 'ваш_длинный_код');
    require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
    $o['charset'] = 'UTF-8';
    $sape = new SAPE_client($o);
    unset($o);
    return $sape->return_links();
  }
?>

Тогда действительно все работает. Спасибо!
avatar
Пришла моя очередь мусолить эту тему, сделал все так как в посте выше

~/engine/lib/external/Smarty/libs/plugins

Но при добавлении {sape}, на сайте просто отображается {sape}, версия 1.0.3, какие еще есть варианты?
avatar
Но при добавлении {sape}
Куда добавляете?
avatar
Добавляю в сайдбар
avatar
sidebar.tpl?
avatar
Да, в сайдбар своего шаблона
avatar
тогда ещё раз проверяйте
файл function.sape.php в директории ~/engine/lib/external/Smarty/libs/plugins

код в файле:
<?php
  function smarty_function_sape($params,&$smarty)
  {
    define('_SAPE_USER', 'ваш_длинный_код');
    require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
    $o['charset'] = 'UTF-8';
    $sape = new SAPE_client($o);
    unset($o);
    return $sape->return_links();
  }
?>
avatar
Перепроверил, все на месте, код идентичный, код сапы вписан корректно, все равно выводится только надпись {sape}
avatar
{sape} в последнюю строчку

чудес не бывает, все работает на 1.0.3
avatar
+ папка в корне с названием в виде кода (права 777), в папке файл sape.php с кодом (код на бирже)
avatar
Папка в корне, права 777, на файлы права 644, кроме линкс дб, на нее права 666.
avatar
кеш везде почистите, мало ли
и подумайте в каком случае код {sape} вылезает текстом :)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.