Если стоит задача дать возможность оценивать новость, можно воспользоваться каким-нибудь модулем голосования. Мне лично понравилось 2 модуля: Fivestar и jRating. Fivestar мне чем-то не угодил. По-моему тем, что там и отметка и общее голосование в одном ммм... блоке. А у jRating это разнесено по 2м (форма голосования и результаты голосования). Да и красивей он (Скриншоты)
Поэтому я начал работать с ним.
Заметки
Модуль требует VotingApi
Работает с jQuery, поэтому обходится без перезагрузки страницы
В админке есть возможность указать вес формы, а так же отображать или нет форму ввода и результат голосования для анонимов и в тизере (все раздельно, скрин внизу)
Что меня не устраивало и какие ошибки я нашел:
Проблема
Количество голосов выводится в каком-то жутчайшем формате обернутым t(). Получается для каждого голосования в модуле локализации находится отдельная строчка.
Решение
- Переопределить вывод результатов голосов. Так как вызывается функция theme_jrating_average_rating, насколько я понял переопределить ее можно в файле template.php (я так не делал. Большая функция - лень разбираться)
- Собственно переделать саму функцию. Более грязный способ. При каждом обновлении придется переделывать опять. Но кто знает, что изменится в новых версиях?:)
Я сделал так:
Строчки
$num_votes_html = $num_votes_span . format_plural($rating['num_votes'], '1</span> vote', 'count</span> votes');
Заменил на
Проблема
Интеграцией с views пока нет. (В Fivestar вроде есть)
Решение
Пока нет:(
Недочет лично для меня
Результат голосования (как и форма) выводится в тексте новости. Мне захотелось в тизере вывести только результат голосования в поле, где указывается автор.
Решение
Поставил галочки "Display average rating for teasers" и "Display rating form for teasers" на "Нет"
В node.tpl.php в нужном месте добавил
Так же немного изменил css.
Удачи
P.S. Пока к друпалевскому wiki не решаюсь подступиться
Да и не тянет на руководство.
P.P.S. Если будет время может сделаю модуль для вывода выпадающего меню в примари линкс. Вывод примари линкс можно переопределить?
Комментарии
действительно красивый... хорошо бы поставить... но у нас не любят голосовать...
Голосовать за новость бессмысленно.
Имхо, нет в этом ценности.
Я (например) могу статью написать, как вылечится от какой то экзотической болезни.
Но ею никто не болеет, зато все читают статьи о том, как похудеть и голосуют за них.
Но через сорок лет, моя статья может спасти жизнь одному человеку.
А от полноты никто не умирал.
Это всё гипотетически, можно и более реальные примеры привести, но думаю смысл ясен.
----------------------------------------------------------
Локализация некоторых модулей
ну, в некоторых случаях голосования помогают, например сообщество хочет избавиться цивилизованными методами (не оскорбляя своего члена удалением самого сообщения) от какого-либо текста, оно голосует против и текст исчезает из рейтингов, становясь фактически невидимым...
Голосование полезно на определенных видах ресурсов.
Например галерея. Или каталог
Новости это я так для примера
Голосования за новости - это ж Digg.com
Или news2.ru или habrhabr.ru
Достаточно интересные реализации.
Ставил jRating у себя на http://fotoplace.ru - пока сыроват модуль + сами разработчики заявляют, что с views пока работает нестабильно. Кроме того у меня он периодически вызывал ошибку выхода за лимит выделенной памяти. Увеличить этот лимит у меня, к сожалению, возможности нет. Т. ч. у меня пока стоит Fivestars, хотя jRating гораздо лучше Fivestarts. Что ж, ждем "стабилизации" модуля...
Про менюшку, плиз, напишите на досуге.
bio3k
Может у меня из-за него траблы с памятью были
maxc22@drupal.org
Постараюсь
cwer, вполне возможно...