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

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

  • 07.06.2011 AmiGator:

    поставил, включил full page links changing, на страницах появился и шаблон мальца подпортился. выключил full page links changing, вроди тэга этого нет, но и не знаю, работает ли... что не так было не пойму

    кстати, как он дружит с кешированием? будет работать?

    • 07.06.2011 Кирилл:

      1. Честно не тестировал на работу только в контенте т.к. на тестовом сайте контекстные ссылки есть и в статьях и на форуме Kunena, но шаблон у меня точно не ломается и прочих побочных эффектов нет.

      2. Про кэширование не в курсе ^^, не помню использую ли я его на своем ресурсе.

  • 13.06.2011 AmiGator:

    не работает в паре с No External Links. ибо он конвертит ссылки во внутренние. пробовал на странице плагинов ставить его ниже — не помогло почему то. добавил в код вот такое изменение:

    $row_text = '' . $sape_context->replace_in_text_segment($row_text) . '';

    но буду рад, если в след версии это будет включено

    код попортился. кароче в плагине сделал обвязку тэгами

  • 14.06.2011 AmiGator:

    да именно так сделал

    • 05.07.2011 Кирилл:

      В процессе внедрения обертывания в <noextlinks> задумался над тем, что этот тег отключит конвертирование для всех ссылок в контенте, а не только из контекста Sape, надо будет придумать другой алгоритм.

  • 26.07.2011 Антон:

    Поставил плагин, сапе не видит контекстный код. Что еще надо сделать?

  • 27.07.2011 Антон:

    А как вставить код вызова обычных ссылок в шаблон? Я конечно извиняюсь за такие вопросы, я в php не шарю.

    Контекстные ссылки в сапе есть, плагин включен, хэш указан. Но ситуация таже.

  • 09.08.2011 Александр:

    Спасибо за плагин

    хотелось бы и для Joomla 1.6 такой же

  • 17.08.2011 Роман:

    А где можно посмотреть, как этот плагин на практике работает?

    Этим плагином можно вставить контекстные ссылки сапы в статью?

    • 17.08.2011 Кирилл:

      Он для этого и делался, у меня он работает и в обычной статье блога и в посте на форуме на основе Kunena. Показывать особо нечего, выглядит просто как ссылка в тексте.

  • 24.08.2011 Очередной вебмастер:

    Поддерживаю, Александра.

    Нужна реализация под Joomla 1.7

  • 25.11.2011 Олег:

    Спасибо. А как с Joomla 1.7?

    • 25.11.2011 Кирилл:

      Пожалуйста, у меня пока нет сайтов на Joomla 1.7 поэтому даже не пробовал. Он вообще не ставится или просто не работает? :)

  • 15.05.2012 Serge:

    В коде вызова обычных ссылок в шаблоне меняем:

    Простите ламера, а «в шаблоне» это где?

    • 15.05.2012 Кирилл:

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

      • 15.05.2012 Serge:

        Спасибо за быстрый ответ. Еще один вопрос, я только вот пробую сапу поставить а не все ясно. Счас идет модерация на сапе.

        Поставил плагин Ваш, по контексту, нужно ли что-то добавлять в контент — типа вызова плагина? Как определяется, какие слова будут ссылочными?

        • 16.05.2012 Кирилл:

          Насколько я помню, плагин, если он включен и если есть ссылки в тексте, отработает сам.

          какие слова будут ссылочными?

          — Те, что у вас купили в сапе, те и будут ссылками, можно проврить в файле words.db в саповской папке в корне сайта.


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

 css.php