[РЕШЕНО] Неверно отображается количество комментариев

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

Аватар пользователя Serg1983 Serg1983 21 августа 2010 в 15:09

Добрый день.

Для материала неверно отображается количество комментариев, точнее, комментариев нет вообще, а их число откуда-то берется.

Мои действия:
- полдня лазил в drupal.ru, в гугле и яндексе в поисках решения проблемы
- чистил кэш (admin/settings/performance)
- чистил таблицы comment и node_comment_statistics

Ничего не помогает.

Что еще можно сделать?

Комментарии

Аватар пользователя zaraza@drupal.org zaraza@drupal.org 21 августа 2010 в 15:35

может коменты добавляются не стандартным методом?
Кол-во коментов вродебы хранится в таблице node и делается +1 при вызове comment_save

Аватар пользователя Serg1983 Serg1983 21 августа 2010 в 16:06

> stddos
насколько я понимаю, их вообще нет, таблица comments пустая

> zaraza@drupal.org
update node set comment = 0 не помог ((

select distinct type from node
не вернул ничего похожего на comment

где еще глянуть?

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 21 августа 2010 в 16:08

"<a href="mailto:zaraza@drupal.org">zaraza@drupal.org</a>" wrote:

Кол-во коментов вродебы хранится в таблице node и делается +1 при вызове comment_save

гыгыгы
"Serg1983" wrote:

update node set comment = 0 не помог ((

гыгыгы

Кагбе намикаю: в поле comment хранится статус комментирования для ноды:
0 - отключены
1 - только чтение
2 - чтение и запись

Аватар пользователя Serg1983 Serg1983 21 августа 2010 в 16:55

насчет дебажить:
делаю так:
в переводе интерфейсов ищу слово "комментариев"

выдается достаточно много чего, смотрю только явно указанные переменные:

count[2] comments
modules/comment/comment.module:625,419; modules/node/node.module:144

в модулях - обращение к node_comment_statistics, не помогает.

как еще можно дебажить?

Аватар пользователя Lexa.Smirnoff Lexa.Smirnoff 22 августа 2010 в 10:57

Че-то ты куда-то не туда копаешь. Языки какие-то... Ты походу вообще смутно представляешь, как друпал работает с темизацией и с языками - строка "5 комментариев" будет в коде совершенно не там, где друпал получает это самое количество. Упрощенно: сначала друпал получит кол-во комментов, затем даст модулям поиздеваться над этим количеством, затем сгенерирует строку "5 комментариев" (ты раскопал именно эту часть), затем темизирует это все. То, что ты раскопал, где формируется эта строка, относительно источника этого количество не даст никакой информации.

Сделай запрос: SELECT * from comments where nid = 555
(здесь 555 - NID проблемной ноды)

Далее если 0, то включать devel_themer и смотреть, кто вообще выводит кол-во комментариев, т.к. это явно не стандартный модуль comment.
Ну а если >0, то комменты действительно есть, а то, что ты их не видишь - это не проблемы друпала. Скорее всего, node.tpl.php. Глубже лечить пациента по фотографии считаю бессмысленным.

Аватар пользователя Serg1983 Serg1983 22 августа 2010 в 12:28

>Lexa.Smirnoff
в переводы я полез с целью найти места инициализации переменной. comments вообще первым делом delete *, как и node_comment_statistics, => SELECT * from comments = 0 rows.

Ты прав, есть там пара каких-то кривых модулей (сайт не мой, разбираюсь по просьбе), подключаю devel, смотрю дальше.