Итак эта статья о плагине для показа контекстных ссылок в 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.
Установка и использование
- Будем считать, что на сайте уже продаются обычные ссылки, т.е. папка '852cca_ваш_хеш_код_924da2' с файлом sape.ru уже залита в корень папки с вашим сайтом, и на нее выставлены права 777;
- Скачать, установить и включить плагин в админке сайта;
- В настройках плагина указать свой хэш (уникальный идентификатор вэбмастера в sape.ru);
- Теперь заходим на сайт, чтобы в папке '852cca_ваш_хеш_код_924da2' создался файл words.db — проверяем этот пункт;
- В коде вызова обычных ссылок в шаблоне меняем:
define('_SAPE_USER', '852cca_ваш_хеш_код_924da2'); // на if (!defined('_SAPE_USER')){ define('_SAPE_USER', '852cca_ваш_хеш_код_924da2'); }
Поддежка
- Можно заслать рубль Я.Д-у через форму вверху
- Можно просто порекомендовать друзям ссылкой
Скачать плагин Universal Sape Context
поставил, включил full page links changing, на страницах появился и шаблон мальца подпортился. выключил full page links changing, вроди тэга этого нет, но и не знаю, работает ли... что не так было не пойму
кстати, как он дружит с кешированием? будет работать?
1. Честно не тестировал на работу только в контенте т.к. на тестовом сайте контекстные ссылки есть и в статьях и на форуме Kunena, но шаблон у меня точно не ломается и прочих побочных эффектов нет.
2. Про кэширование не в курсе ^^, не помню использую ли я его на своем ресурсе.
не работает в паре с No External Links. ибо он конвертит ссылки во внутренние. пробовал на странице плагинов ставить его ниже — не помогло почему то. добавил в код вот такое изменение:
$row_text = '' . $sape_context->replace_in_text_segment($row_text) . '';
но буду рад, если в след версии это будет включено
код попортился. кароче в плагине сделал обвязку тэгами
Привет, обвязку $row_text в <noextlinks> или как-то по-другому?
да именно так сделал
В процессе внедрения обертывания в <noextlinks> задумался над тем, что этот тег отключит конвертирование для всех ссылок в контенте, а не только из контекста Sape, надо будет придумать другой алгоритм.
Поставил плагин, сапе не видит контекстный код. Что еще надо сделать?
Я добавил в статью инструкцию по установке и использованию плагина, проверьте все-ли шаги знакомы. Еще, как вариант, можно вставить код для контекстных ссылок как это советует сделать официальный FAQ сапы, после чего добиться появления контекстных страниц в интерфейсе вэбмастера, и включить плагин обратно.
А как вставить код вызова обычных ссылок в шаблон? Я конечно извиняюсь за такие вопросы, я в php не шарю.
Контекстные ссылки в сапе есть, плагин включен, хэш указан. Но ситуация таже.
Такая инструкция появляется если в интерфейсе вэбмастера нажать на «Добавить площадку» или можно почитать тему Установка кода на Joomla на сапо-форуме.
Спасибо за плагин
хотелось бы и для Joomla 1.6 такой же
А где можно посмотреть, как этот плагин на практике работает?
Этим плагином можно вставить контекстные ссылки сапы в статью?
Он для этого и делался, у меня он работает и в обычной статье блога и в посте на форуме на основе Kunena. Показывать особо нечего, выглядит просто как ссылка в тексте.
Поддерживаю, Александра.
Нужна реализация под Joomla 1.7
Ориентировочно буду делать в начале сентября.
Спасибо. А как с Joomla 1.7?
Пожалуйста, у меня пока нет сайтов на Joomla 1.7 поэтому даже не пробовал. Он вообще не ставится или просто не работает?
Простите ламера, а «в шаблоне» это где?
Имеется ввиду шаблон сайта, обычно в тех случаях когда код показа ссылок вставляется в шаблон напрямую.
Спасибо за быстрый ответ. Еще один вопрос, я только вот пробую сапу поставить а не все ясно. Счас идет модерация на сапе.
Поставил плагин Ваш, по контексту, нужно ли что-то добавлять в контент — типа вызова плагина? Как определяется, какие слова будут ссылочными?
Насколько я помню, плагин, если он включен и если есть ссылки в тексте, отработает сам.
— Те, что у вас купили в сапе, те и будут ссылками, можно проврить в файле words.db в саповской папке в корне сайта.