Вы не зашли.
Страницы 1
Как правильно подключить статьи sape ?
Скачал их код на сайт, добавил код вывода анонсов и код вывода ссылок на анонсы в ads.pro.
В результате ничего не работает:
NGCMS Runtime error: Cannot redeclare class SAPE_client
[ 64]: Cannot redeclare class SAPE_client
Stack trace
Line # File name
1172 /var/www/user/data/www/site.net/fg262063abd19d66f05bd271fff62254/sape.php
Изменено tihu (2015-10-24 12:19:00)
Не в сети
Конкретно как подключаете в ads.pro?
Не в сети
Тип блока ставлю php, а из самого кода просто убираю <?php и ?>
Как инклудиться fg262063abd19d66f05bd271fff62254/sape.php?
Не в сети
На страницы сайта нужно вывести два скрипта, один для вывода анонсов, другой для вывода ссылок на эти анонсы:
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'fg262063abd19d66f05bd271fff62254');
}
require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
$sape = new SAPE_client();
$sape_article = new SAPE_articles();
echo $sape->return_links();
Изменено tihu (2015-10-25 23:53:21)
Не в сети
Проблема не воспроизводиться.
Пример подключения 2х блоков на тестовом сайте:
http://air.tw1.ru/engine/admin.php?mod= … ction=list
admin
admin
Вообще ваша ошибка говорит о том, что файл sape.php подключается несколько раз, но вы привели код с require_once (который позволяет это делать в отличии от require и include), поэтому без понятия что там у вас.
Не в сети
Сайт торгует временными ссылками на sape через плагин ads_sape (при этом в корне сайта нет хеш-кода и sape.php) и если просто вставить коды в ads.pro, получается:
NGCMS Runtime error: Cannot redeclare class SAPE_client
[ 64]: Cannot redeclare class SAPE_client
Stack trace
Line # File name
1172 /var/www/user/data/www/site.net/fg262063abd19d66f05bd271fff62254/sape.php
Если добавить хеш код и sape.php в корень сайта, получается :
[ 64]: Cannot redeclare class SAPE_client
Не в сети
Если вы используете ещё и ads_sape вместе с ads_pro (что стоило указать ранее), то нужно подключать:
if (!defined('_SAPE_USER')){
define('_SAPE_USER', pluginGetVariable('ads_sape', 'sape_user'));
include_once(root."/plugins/ads_sape/inc/sape.php");
}
Не в сети
Если вы используете ещё и ads_sape вместе с ads_pro (что стоило указать ранее), то нужно подключать:
if (!defined('_SAPE_USER')){ define('_SAPE_USER', pluginGetVariable('ads_sape', 'sape_user')); include_once(root."/plugins/ads_sape/inc/sape.php"); }
Переправил код вывода, но ничего не получилось:
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', pluginGetVariable('ads_sape', 'sape_user'), 'fg262063abd19d66f05bd271fff62254');
include_once(root."/plugins/ads_sape/inc/sape.php");
}
require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
$sape = new SAPE_client();
$sape_article = new SAPE_articles();
?>
Изменено tihu (2015-10-25 23:53:51)
Не в сети
Если вы используете ещё и ads_sape вместе с ads_pro (что стоило указать ранее), то нужно подключать:
Но здесь всё по другому:
Для возможности отображения ссылок и анонсов статей (Что такое анонсы?) на тех страницах сайта, которые Вы хотели бы подключить к системе, необходимо в начале исходного кода этих страниц сделать следующую php-вставку:
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'ВАШ_ХЕШ_КОД');
}require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
$sape = new SAPE_client();
$sape_article = new SAPE_articles();
?>
Не в сети
1) Что это?:
define('_SAPE_USER', pluginGetVariable('ads_sape', 'sape_user'), 'ac262063abd19d66f05bd271fff62254');
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
2) Естественно, если подключаете через include_once то потом уже не нужно require_once второй раз делать.
Не в сети
Вообщем добавил все коды:
И прописал соответствующие теги ads_pro в main.tpl
В корне сайта лежит хеш-код и sape.php
Основной код, как я понял, должен выглядеть так:
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', pluginGetVariable('ads_sape', 'sape_user'));
include_once(root."/plugins/ads_sape/inc/sape.php");
}
require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
$sape = new SAPE_client();
$sape_article = new SAPE_articles();
?>
И получается ошибка:
NGCMS Runtime error: Call to a member function return_links() on a non-object
[ 1]: Call to a member function return_links() on a non-object
Stack trace
Line # File name
1 /var/www/usr58732/data/www/site.net/engine/plugins/ads_pro/ads_pro.php(220) : eval()'d code
Изменено tihu (2015-10-24 19:05:38)
Не в сети
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', pluginGetVariable('ads_sape', 'sape_user'));
include_once(root."/plugins/ads_sape/inc/sape.php");
}
$sape = new SAPE_client();
$sape_article = new SAPE_articles();
?>
Не в сети
Сапе требует вставить в .htaccess специальный код
<IfModule mod_rewrite.c>
RewriteEngine On
#Article images rules
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^miscellaneous/[a-z0-9\_\-]+\.(jpg|gif|png)$ /ad242063abd19d66f05bd271fff62254.php [L]
#Articles rules
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^miscellaneous/([0-9]+)$ /ad242063abd19d66f05bd271fff62254.php [L]
</IfModule>
но сапе пишет что шаблон не обрабатывается, проверьте работоспособность mod_rewrite
Вот сам .htaccess:
# Author: NGCMS project team
#
DirectoryIndex index.php
<files .htaccess>
order allow,deny
deny from all
</files>
php_flag register_globals off
php_flag magic_quotes_gpc off
php_flag magic_quotes_runtime off
php_flag magic_quotes_sybase off
php_value session.use_trans_sid 0
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [S=35]
# Editable links
RewriteRule ^.+$ index.php?$1 [QSA,L]
Изменено tihu (2015-10-31 13:55:47)
Не в сети
Поставил симлинки:
ln -s engine/plugins/ads_sape/ads_sape.php /home/site/ab262363abd19d66f05bd271fff62254.php
ln -s engine/plugins/ads_sape/inc /home/site/ab262363abd19d66f05bd271fff62254
Но sape все равно не принимает сайт.
Изменено tihu (2015-10-31 13:58:28)
Не в сети
Страницы 1