Flector

WP-PostRatings

WP-PostRatings это один из самых популярных плагинов, позволяющих посетителю оценить ваш пост. Плагин на самом деле используется больше для красоты, чем для реальной оценки записей в блоге, потому что для более-менее нормального рейтинга нужна достаточно приличная посещаемость (при моих 300 с небольшим человек в день голосуют считанные единицы). Вставлять оценку просто каких-либо записей в вашем блоге глупо, нужен конкретный предмет оценки - например, у меня это оценка плагина. На сайте с кино-рецензиями это будет оценка или фильма или самой рецензии, а на софт-блоге это будет оценка рассматриваемой программы. Так что прежде чем устанавливать этот плагин сначала решите для себя, а нужно ли это вашему блогу или все-таки нет.

Скачиваем плагин с его домашней страницы и устанавливаем его:

1. Распаковываем архив.

2. Копируем папку wp-postratings в /wp-content/plugins/.

3. Заходим в админку блога на вкладку "Плагины" и активируем плагин.

Русского перевода плагина версии 1.50 я так сходу не нашел, поэтому буду говорить про английскую версию. Да и особой нужды именно в русской версии нет, в настройках плагина все должно быть понятно и без перевода.

Сами настройки плагина вы найдете в "Ratings\Ratings Options", а настроить шаблоны вывода вы можете в "Ratings\Ratings Templates". Но не спешите переводить или настраивать там вывод фраз – вряд ли вы будете использовать все возможности плагина.

Чтобы встроить рейтинг вам необходимо добавить в файлы шаблона код (index.php, single.php и др.):

<?php if(function_exists('the_ratings')) { the_ratings(); } ?>

Этот код обязательно должен быть внутри цикла:

<?php while (have_posts()) : the_post(); ?>
...
<?php endwhile; ?>

Таким образом рейтинг будет показываться у каждой записи в вашем блоге. Если вам это не нужно, то не надо использовать вышеприведенный код. А для вставки рейтинга отдельных записей или страниц можно использовать тег [ratings] или [ratings id="1"], где 1 это ID рейтингуемой записи. Использовать и код в шаблоне и одновременную вставку тега [ratings] нельзя, так как в этом случае у вас обязательно возникнут проблемы (проверено лично).

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

377
//add_filter('comment_text', 'comment_author_ratings_filter');

а перевод необходимых строчек надо сделать на:

403
404
405
406
if($post_ratings_images != '') {
	$output .= get_comment_author().' ratings for this post: '.$post_ratings_images;
} else {
	$output .= get_comment_author().' did not rate this post.';

И тогда у вас получится что-то типа:

Вывести различную статистику плагина можно легко через виджет "Ratings". Для вывода статистики напрямую нужно использовать различный код.

1. Вывод самых популярных записей в блоге.

<?php if (function_exists('get_highest_rated')): ?>
   <ul>
      <?php get_highest_rated(); ?>
   </ul>
<?php endif; ?>

По умолчанию используется get_highest_rated('both', 0, 10), где both означает показывать и страницы и записи (post – только записи, page – только страницы), 0 означает необходимое число голосов прежде чем пост будет показан и 10 это число выводимых записей.

2. Вывод самых популярных записей по тегу.

<?php if (function_exists('get_highest_rated_tag')): ?>
   <ul>
      <?php get_highest_rated_tag(TAG_ID); ?>
   </ul>
<?php endif; ?>

По умолчанию используется get_highest_rated_tag(TAG_ID, 'both', 0, 10), TAG_ID это ID тега, both означает показывать и страницы и записи (post – только записи, page – только страницы), 0 означает необходимое число голосов прежде чем пост будет показан и 10 это число выводимых записей.

3. Вывод самых популярных записей в рубрике.

<?php if (function_exists('get_highest_rated_category')): ?>
   <ul>
      <?php get_highest_rated_category(CATEGORY_ID); ?>
   </ul>
<?php endif; ?>

По умолчанию используется get_highest_rated_category(CATEGORY_ID, 'both', 0, 10), CATEGORY_ID это ID рубрики, both означает показывать и страницы и записи (post – только записи, page – только страницы), 0 означает необходимое число голосов прежде чем пост будет показан и 10 это число выводимых записей.

4. Вывод наименее популярных записей в блоге.

<?php if (function_exists('get_lowest_rated')): ?>
   <ul>
      <?php get_lowest_rated(); ?>
   </ul>
<?php endif; ?>

По умолчанию используется get_lowest_rated('both', 0, 10), где both означает показывать и страницы и записи (post – только записи, page – только страницы), 0 означает необходимое число голосов прежде чем пост будет показан и 10 это число выводимых записей.

5. Вывод наименее популярных записей по тегу.

<?php if (function_exists('get_lowest_rated_tag')): ?>
   <ul>
      <?php get_lowest_rated_tag(TAG_ID); ?>
   </ul>
<?php endif; ?>

По умолчанию используется get_lowest_rated_tag(TAG_ID, 'both', 0, 10), TAG_ID это ID тега, both означает показывать и страницы и записи (post – только записи, page – только страницы), 0 означает необходимое число голосов прежде чем пост будет показан и 10 это число выводимых записей.

6. Вывод наименее популярных записей в рубрике.

<?php if (function_exists('get_lowest_rated_category')): ?>
   <ul>
      <?php get_lowest_rated_category(CATEGORY_ID); ?>
   </ul>
<?php endif; ?>

По умолчанию используется get_lowest_rated_category(CATEGORY_ID, 'both', 0, 10), CATEGORY_ID это ID рубрики, both означает показывать и страницы и записи (post – только записи, page – только страницы), 0 означает необходимое число голосов прежде чем пост будет показан и 10 это число выводимых записей.

Более подробную информацию смотрите в документации к плагину.

Стили css плагина содержатся в файле postratings-css.css. Настраивайте вывод как вам угодно, но, пожалуйста, не забудьте поправить вывод иконок.  А именно заменить строку:

37
margin: 0px;

на

37
margin: 0px 0px -2px 0px;

Просто раздражает, когда в каждом блоге видишь одно и тоже - иконки звездочек расположены выше, чем текст на той же строке. И почему-то никто не пытается поправить эту ситуацию (css по умолчанию и поправленный):

При использовании английской версии плагина почти все английские фразы, которые будут показываться на стороне клиента переводятся в настройках плагина в разделе шаблонов. Но есть еще парочка строк до которых надо добраться именно в файле wp-postratings.php, вам надо сделать перевод фраз "Loading" (показывается, когда вы голосуете) и "Please rate only 1 post at a time" (показывается, если вы быстро пытаетесь проголосовать за несколько записей сразу). Для этого замените строчки:

84
$loading = "\n<$start_tag id=\"post-ratings-$id-loading\"  class=\"post-ratings-loading\"><img class="\" title="\"".__(&#39;Loading&#39;," alt="\" src="\"".plugins_url('wp-postratings/images/loading.gif')."\"" width="\" height="\" ...\? ?wp-postratings?).? ?.__(?Loading?,? 16\?? post-ratings-image\?? /> ".__('Loading', 'wp-postratings')." ...</".$START_TAG.">\n";

и

156
'text_wait' => __('Please rate only 1 post at a time.', 'wp-postratings'),

на

84
$loading = "\n<$start_tag id=\"post-ratings-$id-loading\"  class=\"post-ratings-loading\"><img class="\" title="\"".__(&#39;Загрузка&#39;," alt="\" src="\"".plugins_url('wp-postratings/images/loading.gif')."\"" width="\" height="\" ...\? ?wp-postratings?).? 16\?? ?.__(?Загрузка?,? post-ratings-image\?? /> ".__('Загрузка', 'wp-postratings')." ...</".$START_TAG.">\n";

и

156
'text_wait' => __('Пожалуйста, подождите пока учтется ваш голос.', 'wp-postratings'),

На этом вроде все, удачи с плагином.

PS. Русскую версию плагина я все-таки нашел, вы можете ее скачать здесь (файл wp-postratings-1.50-ru_RU.zip).

 

Автор плагина: Lester "GaMerZ" Chan
Страница плагина: http://wordpress.org/extend/plugins/wp-postratings/
Рассматриваемая версия: 1.50 от 13.06.2009
Совместимость с версией WordPress: 2.8 и выше.

Понравился пост? Подпишись на обновления по Обновления блога по RSSRSS или Обновления блога на TwitterTwitter !

Комментарии (всего 299 комментариев)
Написать комментарий

(обязательно)

(обязательно, не публикуется)

Для вставки кода используйте кнопку "Код", по умолчанию используется синтаксис подсветки языка "php", вы можете поменять его на любой другой поддерживаемый GeSHi язык, например "javascript", "css", "html4strict", "sql" и тд. Используйте предпросмотр!
 


Подписаться на уведомления без комментирования.