Dleshka.org
Авторизация

Скачать Фикс кода Сапы от Error`a УРЛ вашего сайта на DLE

+31
TipTop 8-08-2010 Разное 3 комментария
Фикс кода Сапы от Error`a УРЛ вашего сайта на DLE


Эта статья поможет вам избавится на страницах вашего сайта на DLE от Error`a

Прежде всего для тех кто еще не зарегистрирован в этой системе заработка пожалуй №1 тогда переходим по этой
Зарегистрируйтесь чтобы увидеть что тут скрыто.
и регистрируемся.Если у вас есть свой ак на сапе тогда можно просто изменить ваш код на тот что в этой сатье

И так:
Суть проблемы ссылки что покупают на страницах типа _http://мойсайт.ру/tags/Терри/ уходят в еррор.

Краткое описание того что происходит:
Передача url идёт через переменную $_SERVER[’REDIRECT_URL’], так что сразу к коду добавляем: $o[’request_uri’] = $_SERVER[’REDIRECT_URL’]; Жаль что это не поможет. Движок отдаёт урлы с использованием кириллицы, когда сапа ждёт «правильный» URL (RFC 1738 никто не отменял: tools.ietf.org/html/rfc1738). Нам пригодиться функция rawurlencode, но правда с небольшой заточкой под наше ЧПУ. На экспериментальном сайте страницы тегов имели путь: site.ru/tags/название+тега/, от сюда и конечный вариант кода .


После долгих исканий по форумам и сайтам правильного кода Сапы для DLE эксперементальным путем пришел к решению.

Вот сам код (установка не более 1ой мин.).
В файле index.php.
Ищем строку:
$tpl->compile ( 'main' );

Выше ставим:
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'xxxxx_sape_code');
}
$o['host'] = 'http://site.ru';
if (substr($_SERVER['REDIRECT_URL'], 0, 6) == "/tags/") {
$o['request_uri'] = str_replace ("+", "+", str_replace ("/", "/", rawurlencode ($_SERVER['REDIRECT_URL'])));
} else {
$o['request_uri'] = $_SERVER['REDIRECT_URL'];
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client($o);
$tpl->set('{sape_links}', $sape->return_links());
$tpl->set('{sape_temp}', $_SERVER['REDIRECT_URL']);
if (substr($_SERVER['REDIRECT_URL'], 0, 6) == "/tags/") {
$tpl->set('{sape_temp2}', str_replace ("+", "+", str_replace ("/", "/", rawurlencode ($_SERVER['REDIRECT_URL']))) );
}


Потом по шаблону раскидываем коды вывода ссылок: между тегами {} прописываем--> sape_links


К стате этот код коректно работает на версиях DLE от 7.5 до 8.5 а так же и на других ссылочных биржах таких как СетЛинкс и др.
Информация
Зарегистрируйтесь чтобы комментировать публикацию.
Neo
5 сентября 2010 10:28
+ 0 -
прочитав эту статью почуствовал себя идиотом
хотя знаю что проблема в авторе

Потом по шаблону раскидываем коды вывода ссылок: между тегами {} прописываем--> sape_links
- вот это оссобенно непонятно
tiptop
5 сентября 2010 12:47
+ 0 -
Цитата: Neo
- вот это оссобенно непонятно



1-ое.Это потому что недостаточная фильтрация в модуле последние комменты который выводится с лева у меня на сайте.Если написать в теге код то идет порча шаблона .
2-ое.Идет неправильное отображение на сайте так как пользуюсь кодом.

P.S.Раскинь мозгами и сделай так как тебе надо.
Neo
5 сентября 2010 20:15
+ 0 -
ммм...
очень приятно что уделил мне время
Авторизация