Universal Sape Context Plugin

Universal Sape Context PluginИтак эта статья о плагине для показа контекстных ссылок в Sape.

Подобный плагин для Joomla 1.5 ранее уже существовал, но ссылки он у меня не показывал, поэтому пришлось разобраться с файлом sape.php и заодно сделать свой вариант, несколько проапгрейженный.

Конфликты кодировки

Суть проблемы выявленная с помощью debug-а и var_dump-ов и массива $GLOBALS заключалась в конфликте кодировок, т.е. в файле links.db была прописана UTF-8, а в words.db и с бубнами и c танцами и с техподдержкой прописывалась windows-1251, пришлось внести микропарвку в sape.php:

// Кодировка
if (isset($options['charset']) && strlen($options['charset'])) {
    $this->_charset = $options['charset'];
} else {
    //$this->_charset = 'windows-1251';
    $this->_charset = 'UTF-8';
}

В самом же плагине можно создавать объект SAPE_context с кодировкой (как рекомнедуется в факе sape) прописанной в настройках плагина:

$o['charset'] = $this->encode; 
$sape_context = new SAPE_context($o);
unset($o);

Sape-контекст должен работать в любом Joomla-компоненте

Исходя из этого плагин был сделан системным с возможностью обрадатывать только содержимое компонента com_content, так и всего html-кода страницы. Например, у меня теперь отображаются контекстные ссылки на компоненте форума для Joomla — Kunena.

Установка и использование

  1. Будем считать, что на сайте уже продаются обычные ссылки, т.е. папка '852cca_ваш_хеш_код_924da2' с файлом sape.ru уже залита в корень папки с вашим сайтом, и на нее выставлены права 777;
  2. Скачать, установить и включить плагин в админке сайта;
  3. В настройках плагина указать свой хэш (уникальный идентификатор вэбмастера в sape.ru);
  4. Теперь заходим на сайт, чтобы в папке '852cca_ваш_хеш_код_924da2' создался файл words.db — проверяем этот пункт;
  5. В коде вызова обычных ссылок в шаблоне меняем:
    define('_SAPE_USER', '852cca_ваш_хеш_код_924da2');
    // на
    if (!defined('_SAPE_USER')){
    define('_SAPE_USER', '852cca_ваш_хеш_код_924da2');
    }

Поддежка

  1. Можно заслать рубль Я.Д-у через форму вверху
  2. Можно просто порекомендовать друзям ссылкой

Скачать плагин Universal Sape Context

Комментариев: 29

  • 23.05.2012 Илья:

    Здравствуйте!

    У меня Джумла 1.6.2.

    Уже установлен модуль для отображения простых ссылок.

    Пытаюсь установить плагин для отображения контекстных ссылок (скачивал уже три разных версии, включая вашу) и столкнулся со следующей проблемой:

    В свойствах плагина нет никаких настроек (кроме стандартных джумловских). То есть мне некуда ввести хэш-идентификатор.

    А при попытке включить плагин без указания хэша сайт просто не работает.

    Не могли бы вы подсказать, почему нет настроек (поля куда вбить хэш)?

    Может дело в несоответствии плагина и версии Джумлы (хотя при установке не ругается)?

    • 23.05.2012 Кирилл:

      Да, похоже пришла пора потестировать его на J 1.6. :) если вспомню, то прямо сегодня вечером.

  • 03.06.2012 ODIN65:

    Такая же история! Нет настроек плагина, а когда его запускаешь — сайт виснет, пока не удалишь плагин! :(

  • 14.06.2012 YAK-40:

    Нигде не нашел такого же плагина на J1.7 =(

    Подскажите, планируется ли его апдейт?

  • 07.10.2012 Max:

    Привет всем кто работает с сапой, проблемка появилась, выводится еще одна ссылка в том месте, где установлен код в индексном файле шаблона и с такими знаками �������� , на страницах с купленными ссылками, что можно сделать? чтоб только в модуле была ссылка?

    • 11.10.2012 Кирилл:

      Не понял на 100%, стоит и контекстный плагин и модуль для обычных ссылок? Что за модуль? В каком месте появляются ненужные ссылки? Стоит ли вдобавок простой/контекстный код в шаблонах?

  • 11.10.2012 Max:

    Да стоит mod_sape и ваш плагин, подобные ссылки появляются в том месте шаблона куда саповский код прописываю. на сайте посмотрите в самом низу.

    • 14.10.2012 Кирилл:

      Хм, теоретически mod_sape уже выполняет тот код который вы прописываете внизу сайта (так что руками этот код можно не прописывать), а проверить влияние моего плагина на эту ситуацию можно его простым отключением.


Добавление комментария:

 css.php