Эксперимент с контекстными ссылками Sape

Эксперимент с размещением статей Sape в блоге на Wordpress пока в сонном состоянии — заявок нет, хоть и скинул цены до средних. Хочу теперь попробовать контекстные ссылки той же Sape поразмещать. Есть у меня на это дело перспективный (большой) сайт на Drupal, но пробовать буду на этом блоге.

Никаких модулей использовать не буду, как я понял — они для обычных «блочных» ссылок, меня они в данный момент не интересуют. Нашел самый простой рабоче-крестьянский способ, который по совместительству и самый удобный — можно установить Sape только в определенных типах материалов. Здесь у меня с ними не густо — только записи в блоге и одна страница, но на другом сайте их несколько.

Установка кода для вывода контекстных ссылок Sape в Drupal

Инструкция отсюда, с виду рабочая.

  1. Находим файл node.tpl.php в каталоге схемы, выбранной вами. Скорей всего, он у вас лежит в каталоге /site/themes/имя вашей схемы
  2. Находим в нем вывод ноды, он должен выглядеть примерно так:
    <?php print $content ?>
    и меняем его на такую конструкцию:
    <?php
    if (!defined('_SAPE_USER')){
    define('_SAPE_USER', 'ваш хеш код');
    }
    require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
    $o['charset'] = 'UTF-8';
    $sape_context = new SAPE_context($o);
    print $sape_context->replace_in_text_segment($content);
    ?>

Для конкретных типов содержимого можно создать отдельные шаблоны node-blog.tpl.php или node-page.tpl.php.

Есть один нюанс — любая запись блога будет путешествовать с первого уровня до второго и так до самых до окраин. Строго говоря, первого уровня не будет вообще, поскольку на главной размещается только короткий анонс записи. Как с этим ненавязчиво разобраться? Можно сделать архив или индекс, если страниц мало, как здесь. Если их больше 20 тысяч, то задача усложняется. Буду решать проблемы по мере поступления.

Могут всплыть проблемы с кешированием. Навскидку, «агрессивное» кеширование, которое сохраняет полностью текст документа — не пойдет. Хотя, если уменьшить время жизни кеша... В общем, пошел пробовать.