Рубрики
Follow @Bloginforama on Twitter

Подписка на RSS ленту

Archive for Январь, 2010

Меняем WordPress Related Posts на Yet Another Related Posts Plugin

В пятой части статьи “Wordpress – атака клонов” я рекомендовал для вывода схожих тем в постах плагин WordPress Related Posts. Плагин неплохой, функции свои выполняет, исправно выводит рекомендуемые статьи. Некий Michael Yoshitaka Erlewine пошел дальше и на основе этого плагина создал, не побоюсь этого слова шедевральный плагин. Вот его я и предлагаю Вам в работу, называется он Yet Another Related Posts. Так же как и в Related Posts определение релевантности происходит не банально по меткам, а плагин обращается для этого в базу данных и на основании анализа оной выводит похожие посты.
Я его апробировал, мне плагин понравился, так что с удовольствием рекомендую к использованию. Опишу некоторые функции, конечно прочитать описание не помешает, но в принципе Вы можете просто его активировать, не трогая никаких настроек и плагин заработает. Правда обратите внимание на некоторые подводные камни. Как залить плагин и в какую директорию я писал не раз на примере других плагинов, так что эту часть мы опустим, как активировать Вы тоже знаете. Начнем сразу с настроек в админке:

YetAnother
1YetAnother
2YetAnother
В секции “The Pool”показаны наши категории и тэги, из которых собственно и выбираются похожие посты. Кое какие из них, при желании можно отключить. Кроме того есть возможность отметить, показывать ли защищенные паролем и ранее опубликованные посты. В последних версиях можно указать с какого срока посты брать в работу. Сразу скажу, на скриншотах настройки версии 2.1.6 не последней на этот момент версии, да простит меня автор, последние показались мне чересчур уж навороченными, алгоритм может быть улучшился, но и тяжелей я думаю плагин тоже стал, что не очень полезно для нашего и так не слишком поворотливого движка. Вот посмотрите как туго в версиях 3+ закружаются категории и теги в админке плагина. Учтите это не на фришнике, а на локалхосте.

3YetAnother
В более ранней версии 2.1.6 это происходит мгновенно. Правда в старших версиях предусмотрено кэширование, по заверению автора это повышает производительность и наверное он прав. Соответственно в базе данных появляются таблицы:

4YetAnother
Имейте в виду, что файлы со стоп-словами для каждого языка отдельно лежат в папке “lang” плагина, по умолчанию там английский и немецкий, русского, как Вы поняли нет. Там же их можно редактировать. Последние версии имеют русскую локализацию но файла со-стоп словами нет. Если кому то нужна старая версия с русской локализацией, в интернете есть переведенная версия 2.1.6, в которой также есть и файлы с русскими стоп-словами.
“Relatedness” options. Здесь настраиваются параметры релевантности, т.е. мы настраиваем алгоритм по которому плагин будет определять соответствия друг другу отбираемых статей. Вроде сложно с виду, но в большинстве случаев дефолта достаточно. Единственно можно поиграться с циферкой порогового предела соответствия. Зависимость такая – чем меньше похожи статьи и их количество, тем меньше цифра.
Настроить параметры отображения списка можно в следующей секции.
Display options for your website: Здесь у Вас два варианта, проставить чек на Automatically display related posts(Автоматически показывать связанные посты), или залезть в редактирование. Если необходимо поменять место вывода списка, снимите чек и пропишите код:

Kod
<?php if(function_exists(’related_posts’)) { related_posts(); } ?>

Хотите править шаблон, можно воспользоваться примерами кода, прописанными в админке Website display code example, а вот в версиях выше 3-ей даже появилась отдельная папка yarpp-templates. В ней четыре файлика, которые надо загрузить в папку с активированной темой. Закрадывается сомнение, не перебор ли это, а вот порадовало наличие виджета для вывода списка в сайдбаре. Вот это удобно. Там же в настройках можно проставить максимальное количество постов в списке, и если необходимо показать небольшую выдержку из постов, для этого надо проставить соответствующий чек и указать количество слов в ней. Чуть ниже HTML теги в окошке Before / after (Excerpt), указывающие в частности размер шрифта выдержки. Order results: Правило вывода записей в выпадающем окошке.
Default display if no results: Здесь надпись, которая выводится если связаных постов нет. Если по рассеяности или специально будет проставлен чек на Help promote Yet Another Related Posts Plugin?., учтите что ниже ссылок на Рекомендуемые статьи в постах и RSS Вы получите внешнюю ссылку на сайт автора. Очевидно что таким образом автор зарядил себе бонус, правда в выплывающем окошке и на своем сайте он предупредил что это опционально. Еще про бонусы: я неоднократно в прошлых статьях призывал Вас заглядывать в исходный код страницы. Так вот просмотрев исходный код страницы с блоком ссылок на рекомендуемые статьи в каждом “title” я увидел примерно такое “17.110000 is the YARPP match score between the current entry and this related entry. You are seeing this value because you are logged in to WordPress as an administrator. It is not shown to regular visitors.” Представьте что у Вас сателлит на 1000 постов, после каждого 5 ссылок на рекомендуемые статьи. Сами умножьте и подумайте сколько дублированного контента у вас на сайте. Я посчитал – один миллион сорок пять тысяч знаков….Код отвечающий за это безобразие в файлике magic.php на странице 209:
Kod
if ($userdata->user_level >= 8 and $domain != ‘rss’)
$output .= ‘ <abbr title=”‘.sprintf(__(’%f is the YARPP match score between the current entry and this related entry. You are seeing this value because you are logged in to WordPress as an administrator. It is not shown to regular visitors.’,'yarpp’),round($result->score,3)).’”>(’.round($result->score,3).’)</abbr>’;
Вот бы можно было вместо этой фразы вставить какой нибудь полезный макрос. Может кто нибудь знает – отпишитесь в комментах.
В секции Display options for RSS примерно те же настройки. Автоматическое отображение на сайте и RSS каналах не зависят друг от друга. Надо осторожно пользоваться функцией вывода если вы работаете с какими либо плагинам RSS, так как возможны траблы.
Вообще, честно говоря, даже не знаю какую версию посоветовать. Вроде по описанию просится одна из старших версий – все таки кэширование и пр… А с другой стороны эти шаблоны, которые обязательно загружать в тему(иначе плагин ругается), эти потуги при загрузке страницы в админке плагина(см.скриншот). В общем надо обкатывать и делать выводы.
P.S. Проверил работу плагина(v2.1.6) с практически дефолтными настройками на парочке тормознутых фришных хостах. Порог срабатывания по умолчанию был – 3. Там, где Related Posts давал 0 Рекомендуемых постов, Yet Another Related Posts Plugin показывал три.
Автор Stepan Demin. Использование и копирование статьи РАЗРЕШАЕТСЯ с указанием автора и ссылки на первоисточник BlogInforama