Прокрутка комментариев в зафиксированной области

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

Аватар пользователя talgar@drupal.org talgar@drupal.org 18 мая 2009 в 7:31

Задача: зафиксировать по высоте область для отображения комментариев на странице.

Часто сталкиваешься с таким неудобством, что на странице много комментариев и поле ответа находится в самом низу страницы. Когда отвечаешь на тему приходится "бегать" вверх-вниз чтобы процетировать, ответить и т.д.
Поэтому и решил попробовать зафиксировать область для комментариев.

Самый простой способ - это добавить дополнительный DIV куда поместить все комментарии и сделать его с заданной высотой и полосой прокрутки. Но не знаю где это можно сделать.

В теме доступна функция phptemplate_comment_wrapper($content, $node), но сюда помимо самих комментариев в $content приходит и форма ответа для комментария. А обрамить надо только сами комменты. В файле comment.tpl.php можно переопределить только вывод одного комментария.
Как можно обрамить ДИВом только список комментариев?

В идеале бы хотелось область для отображения комментариев сделать самоподгружаемой - критушь прокрутку и комментарии подгружаются через ajax.

Комментарии

Аватар пользователя Обухов Никита Обухов Никита 18 мая 2009 в 13:15

«В файле comment.tpl.php можно переопределить только вывод одного комментария.»

Ну если особо приспичит, есть простейший костыль:

global $comments_count;
if (empty($comments_count)) {
$count = 1;
print '<div id="comments-wrapper">';
}

И в page.tpl.php после комментов добавить </div>

Smile

Аватар пользователя talgar@drupal.org talgar@drupal.org 18 мая 2009 в 15:05

"Обухов Никита" wrote:
Дык есть же уже слой #comments:

в этот слой также попадает и форма для отправки комментариев, которая сидит в div class="box"
а мне получается надо отделить комменты от этой формы, чтобы тока комменты прокручивались:

<div class="comment">
</div> - последний коммент
<div class="box"> - форма отправки комментария