[РЕШЕНО] Вывод в блоке последних комментариев и звёзд fivestar, добавленных при комментарии.

Главные вкладки

Аватар пользователя oleg220 oleg220 21 июня 2012 в 10:48

Добрый день!
Есть у меня страница с отзывами о магазине. Отзывы оставляются в комментариях. При комментарии пользователь выбирает количество звёзд fivestar.
Как вывести в блоке последние отзывы и количество звёзд, оставленных посетителем?

Выбирал во взаимосвязях "Комментарий: Vote results". И потом появлялось поле "Vote results: Значение", которое я вывожу (какого то специального поля с рейтингом комментария не появилось).

В итоге у каждого комментария выводятся 5 пустых звёзд. Ощущение, что выводятся звёзды не конкретного комментария, а рейтинг самой страницы с отзывами (страница как раз не оценивается).

Как можно решить проблему?

Комментарии

Аватар пользователя dc_odessa dc_odessa 28 июня 2012 в 1:36

Вывод рейтинга для ноды:
<?php
$node = node_load($nid);
print(fivestar_widget_form($node));
?>

Вывод рейтинга для комментария:

<?php
$cid = 5; //нужно подставить ваш ID комментария
$comment = db_fetch_object(db_query('SELECT * FROM {comments} WHERE cid = %d', $cid));
$node = node_load($comment->nid);
if (!isset($comment->fivestar_rating)) {
$current_rating = fivestar_comment_load($comment->cid, $comment->nid);
$comment->fivestar_rating = isset($current_rating['value']) ? $current_rating['value'] : NULL;
}
$comment->fivestar_rating = $comment->fivestar_rating;
print theme('fivestar_static', $comment->fivestar_rating, variable_get('fivestar_stars_'. $node->type, 5));
?>

В вашем случае по Views можно добавить поле с ID комментария и переписать шаблон вывод Views для этого поля, добавив в него код, который выше.