Помогите пожалуйста новичку, у меня перестали отображаться комментарии. В настройках выставил права анонимусам на просмотр и добавление комментариев. Сама форма высвечивается, но ранее добавленных записей не видно. А под юзерами и админом все ок.
угу, есть. Проблема решилась. Я поменял тему оформления и на страницах с комментариями стала светиться ошибка "Notice: Undefined property: stdClass::$comment_count in comment_node_page_additions() (line 724 of \modules\comment\comment.module)."
заглянул в код и просто поменял
if (($node->comment_count && user_access('access comments')) || user_access('administer comments')) {
TRUNCATE TABLE node_comment_statistics;
INSERT INTO
node_comment_statistics
(
nid,
last_comment_timestamp,
last_comment_name,
last_comment_uid,
comment_count
)
SELECT
n.nid,
IFNULL(last_comment.created,n.changed) AS last_comment_timestamp,
IFNULL(last_comment.name,null) AS last_comment_name,
IFNULL(last_comment.uid,n.uid) AS last_comment_uid,
IFNULL(comment_count.comment_count,0) AS comment_count
FROM
node AS n
LEFT OUTER JOIN (SELECT nid, COUNT(*) AS comment_count FROM comment WHERE status=1 GROUP BY nid) AS comment_count ON comment_count.nid=n.nid
LEFT OUTER JOIN (SELECT nid, MAX(cid) AS max_cid FROM comment WHERE status=1 GROUP by nid) AS max_node_comment ON max_node_comment.nid=n.nid
LEFT OUTER JOIN (SELECT cid,uid,name,created FROM comment ORDER BY cid DESC LIMIT 1) AS last_comment ON last_comment.cid=max_node_comment.max_cid
WHERE
n.status=1
ORDER BY
n.nid;
Ребята, а что может случиться, если такая ошибка появилась в д7 на сайте, где нет комментариев? при этом в стандартной доне Article перестала картинка грузиться...
Комментарии
users -> uid = 0 есть в базе ?
угу, есть. Проблема решилась. Я поменял тему оформления и на страницах с комментариями стала светиться ошибка "Notice: Undefined property: stdClass::$comment_count in comment_node_page_additions() (line 724 of \modules\comment\comment.module)."
заглянул в код и просто поменял
if (($node->comment_count && user_access('access comments')) || user_access('administer comments')) {
на
if (($node->comment_count = 50 && user_access('access comments')) || user_access('administer comments')) {
Все специально присвоили 50 ? $node->comment_count = 50
По-другому не знаю как исправить.
Точно такая же байда на
Drupal 7.27
php 5.2.17
Comment 7.27
Также столкнулся с этой проблемой в Drupal 7.31 (php 5.4.27).
Решение su25 помогло. Спасибо!
Это на каких темах такое??
Это помогает, проверено. Взято отсюда https://www.drupal.org/node/1036668
TRUNCATE TABLE node_comment_statistics;
INSERT INTO
node_comment_statistics
(
nid,
last_comment_timestamp,
last_comment_name,
last_comment_uid,
comment_count
)
SELECT
n.nid,
IFNULL(last_comment.created,n.changed) AS last_comment_timestamp,
IFNULL(last_comment.name,null) AS last_comment_name,
IFNULL(last_comment.uid,n.uid) AS last_comment_uid,
IFNULL(comment_count.comment_count,0) AS comment_count
FROM
node AS n
LEFT OUTER JOIN (SELECT nid, COUNT(*) AS comment_count FROM comment WHERE status=1 GROUP BY nid) AS comment_count ON comment_count.nid=n.nid
LEFT OUTER JOIN (SELECT nid, MAX(cid) AS max_cid FROM comment WHERE status=1 GROUP by nid) AS max_node_comment ON max_node_comment.nid=n.nid
LEFT OUTER JOIN (SELECT cid,uid,name,created FROM comment ORDER BY cid DESC LIMIT 1) AS last_comment ON last_comment.cid=max_node_comment.max_cid
WHERE
n.status=1
ORDER BY
n.nid;
Ребята, а что может случиться, если такая ошибка появилась в д7 на сайте, где нет комментариев? при этом в стандартной доне Article перестала картинка грузиться...
Вот здесь решение проблемы: https://www.drupal.org/node/1020658
Кратко:
надо в файле /modules/comment/comment.module заменить строчку:
if (($node->comment_count && user_access('access comments')) || user_access('administer comments')) {
на
if ((!empty($node->comment_count) && user_access('access comments')) || user_access('administer comments')) {
(это примерно 724 строка)