Как сделать древовидные комментарии в вашей WordPress-теме

Автор:
(Людмила Лунева)

Веб-дизайнер и разработчик сайтов на wordpress

Давно собиралась обновить страницу комментариев в теме, используемой на этом блоге, да все руки не доходили. Так, наверное, и не собралась бы – да сделала новую тему и тут уж, поневоле, пришлось переделать вывод комментариев.
Древовидные комментарии в WordPress
Честно признаюсь, разобраться с выводом комментов в новом виде было непросто. Пришлось изучить и часть Кодекса, описывающую древовидные комментарии и несколько блогов, авторы которых объясняют отдельные пункты Кодекса, связанные с выводом комментариев.


Кстати, кроме древовидного расположения, в комментариях WordPress 2.7 появилась интересная возможность ответить на любой уже существующий комментарий так, что ваш комментарий будет опубликован сразу после комментария на который вы ответили.
И даже форма для комментария развернется в любом нужном вам месте без перезагрузки страницы. Для этого нужно только нажать кнопку «Ответить», расположенную под каждым существующим комментарием.
Посмотреть, как это выглядит можно, например, на странице Как составить правильный robots.txt для сайта на wordpress .

Итак, что делать, чтобы на вашем блоге появились древовидные комментарии?

Содержание:

  1. Сначала нужно вставить этот код
  2. Дальше требуется обновить файл comments.php
  3. Теперь нужно изменить стиль вывода комментариев
  4. Потребуется, также, отредактировать файл CSS
  5. Нужно разрешить использование древовидных комментариев на вашем блоге

↑ Сначала нужно вставить этот код

<?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>
в файл header.php  непосредственно перед <?php wp_head(); ?>

↑ Дальше требуется обновить файл comments.php

В WordPress 2.7 файл, отвечающий за вывод комментариев, стал намного проще. Теперь весь код, содержащийся в тегах

<ol class="commentlist"></ol>

можно заменить одной функцией

 <?php wp_list_comments(); ?>

которая и выведет список комментариев.
Вот здесь http://www.niharsworld.com/2008/12/16/how-to-implement-threaded-comments-in-wordpress-themes/ можно посмотреть, что именно поменялось в выводе комментариев.
А можно не париться с исправлением кода, а скачать новый comments.php по ссылке внизу этого поста.

↑ Теперь нужно изменить стиль вывода комментариев

чтобы он соответствовал стилю вашего блога.
Для этого код вывода комментов пропишем в файле functions.php - этот файл вы, также, сможете найти в архиве, внизу этого поста.

↑ Потребуется, также, отредактировать файл CSS

В шаблоне комментариев WordPress 2.7 появилось множество встроенных классов, позволяющих задать отдельный стиль для каждого типа комментариев.

Например, можно сделать одно оформление для комментариев зарегистрированных пользователей, другое для незарегистрированных и еще какой-нибудь особенный стиль для комментариев самого автора блога.
Образец файла css можете скачать по ссылке внизу поста.
И, наконец, последнее

↑ Нужно разрешить использование древовидных комментариев на вашем блоге

Для этого зайдите в админку WordPress, пункт меню "Настройки - Обсуждение" и поставьте птичку возле строки "Включить древовидные (вложенные) комментарии с уровнем вложенности до 5". Сохраните изменения.

Ну вот, теперь на вашем блоге будут красивые древовидные комментарии.

Скачайте файлы с кодом древовидных комментариев ↓

Уже скачали 337 раз(а)
Открыть ↓
Для разблокировки содержимого, введите код из последнего, присланного вам письма.
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1

(3 голоса, в среднем: 5 из 5)

Комментарии

  1. Здравствуйте друзья!
    Не подскажите как можно сделать полную форму добавки новостей в wordpresse.
    Пример: чтобы было краткое описание оно есть!,+ полное описание я смотрю его в стандарте нету очень нужно сделать полное описание которое будет выводится только в полной новости!

    • Иван, я не совсем поняла, что вы хотите сделать, но на этом форуме http://forum.maxsite.org/ видела обсуждения по вашей теме. Посмотрите там.

  2. Здравствуйте!
    Спасибо Вам огромное!!! Ваша статья мне очень помогла!!! Перепробовал разные плагины для отображения древовидных комментариев, но ничего не помогало и только Ваши файлы помогли!!! Ура!!! Спасибо Вам! Удачи Вам и успеха во всех начинаниях!!! =)))

    • Только единственный недочет в том, что в самих комментариях нет кнопки "Удалить". Т.е. комментарий можно удалить теперь только через админ-панель, а не на самом блоге. Скажите, пожалуйста, где прописана функция удаления комментария и как ее вернуть?..

  3. Хочу сделать древовидное меню. Если вы в курсе как сделать древовидные комментарии, то может подскажите?

  4. Подскажите, пробовали ли работоспособность этого кода в WP2.9 ?

    • Да, именно в WordPress 2.9 и пробовала.

  5. Жесть, а уменя этой галочки не стояло - Включить древовидные (вложенные) комментарии с уровнем вложенности до 5". Сохраните изменения.
    и все работает... то есть этот параметр не критичный или как это понимать?
    только что поставил галочку.

  6. Great post!

  7. I have been surfing around regarding your site. We have found a lot about your website and that i anticipate extra updates and you will be back.

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

  8. Superb blog!
    Do you have any recommendations for aspiring writers? I’m planning to start my own blog soon but I’m a little lost on everything. Would you advise starting with a free platform like WordPress or go for a paid option? There are so many options out there that I’m totally confused .. Any recommendations? Thanks!

    Супер блог!
    Есть ли у вас какие-либо рекомендации для начинающих писателей? Я планирую начать свой собственный блог скоро, но я немного потерялась. Бы вы посоветовали начать с бесплатной платформы, как WordPress или пойти на платный вариант? Есть так много вариантов там, что я в недоумении .. Любые рекомендации? Спасибо!

    • Barbara, для начинающего лучше использовать WordPress.
      И не только потому, что он бесплатный.
      Wordpress несложный в управлении, с ним очень просто работать.
      К тому же, к нему есть подробная документация и несколько хороших форумов поддержки.

  9. Ксана, спасибо за Вашу статью. Единственное, лично у меня возникла такая проблема - после отправления комментария выдает следующую ошибку:

    Warning: Cannot modify header information - headers already sent by (output started at /var/www/vladimir/data/www/infinite-soul.org/wp-content/themes/popblue3c-child/functions.php:6) in /var/www/vladimir/data/www/infinite-soul.org/wp-content/plugins/subscribe-to-comments.php on line 817
    Warning: Cannot modify header information - headers already sent by (output started at /var/www/vladimir/data/www/infinite-soul.org/wp-content/themes/popblue3c-child/functions.php:6) in /var/www/vladimir/data/www/infinite-soul.org/wp-includes/pluggable.php on line 934

    • Это значит, что вы неверно сохранили файл (имя файла указывается в первом Warning). 99,99% вероятности, что вы сохранили файл в кодировке UTF-8 с сигнатурой (BOM).

  10. Здравствуйте. Может быть Вы поможете. Уведомления о новых комментариях приходят, но ни в админке, ни на сайте не выводятся сами комментарии.Заменил шаблон, но не помогло.

    • От темы это не зависит.
      Причина в wordpress, чтобы ее найти, нужно разбираться в вашем сайте.
      Не глядя, дать вам совет, как это исправить - невозможно.
      Попробуйте просто переустановить движок.

  11. Подписался на рассылку.
    Получил код. Вошел с ним в свой кабинет.
    Но при получении кода древовидных комментариев вылезает надпись
    "Неправильный код, попробуйте еще раз".
    Пробовал несколько раз. Безрезультатно.

    • Ничего не поняла. В какой кабинет вы вошли?

  12. Спасибо за скрипт!!!! Все работает.
    Вопросы:
    Как сделать, чтобы рамки комментариев были закруглены?
    Как окрасить поле комментария автора?
    Если переместить поля вноса имени и мыла вниз, а поле Адреса сайта выкинуть, то все будет нормально работать или будут проблемы?

    • Слишком много вопросов :). Вам лучше задать их на нашем форуме.

      • Скажите: в какой раздел лучше задать вопрос, чтобы Вы нашли мои вопросы?

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

  13. Сейчас пробую написать тему для WP с нуля. Добавил файлы из этой статьи в свою тему. Подогнал по стилям вид комментариев - все работает супер!
    Но только стоит мне залогиниться, как админ блога тут же пропадает поле ввода комментария. Подскажите, где искать причину и как исправить?)

    • Пропадает не поле ввода комментариев, а поля для ввода имени, email'а и адреса сайта.
      Но, так и должно быть :).

      • Эти поля естественно пропадают, но вместе с ними, как я писал выше, пропадает текстовое поле для ввода самого комментария. Получается, что я комментарий никак не могу написать - поля нет.
        Еще заметил, что в этот момент пропадает еще заголовок списка комментариев, как у Вас "К посту "Как сделать древовидные комментарии в вашей WordPress-теме" оставлено 26 коммент.".

        • Значит, вы что то сделали неправильно.
          Попробуйте еще раз.

  14. Спасибо. Пригодилось для моего блога

  15. Спасибо. Пригодилось для моего блога...

  16. здравствуйте скажите пожалуйста, я сделала свой сайт на водпресс, но окна комментария ни на одной странице нету. В свойствах каждой страницы я галочку поставила "разрешить комментарий". Ничего не изменилось. В чем проблема? Как сделать комментирование

  17. Здравствуйте, Людмила! Нужна Ваша помощь!
    У меня в шаблоне древовидные комментарии работают, но кнопка "Ответить" есть не у всех комментариев - кнопки "ответить" нет у комментариев, которые последние по уровню вложенности, который указан в настройках. Плагин Comment Toolbar не помог.
    Подскажите, как сделать так, чтобы кнопка "Ответить" была у всех комментариев, чтобы можно было ответить на любой комментарий. Спасибо!

    • У последних, по уровню вложенности, комментариев и не должно быть кнопки 🙂 именно потому, что они последние.

  18. Здравствуйте. Подскажите пожалуйста в чем может быть проблема? В исходниках темы связанных с комментариями ничего не изменял, но при попытке ввода комментария выскакивает эта ошибка - ОШИБКА: пожалуйста, введите комментарий.

    • Вордпресс обновился.
      Решение проблемы смотрите здесь - http://prodengiblog.ru/forum/index.php?topic=1870.0

Ответ на комментарий

Войти, чтобы написать отзыв.

Внимание: все отзывы проходят модерацию.

Топ комментаторов
АватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватар
Самые комментируемые записи
Самые читаемые записи

Для того чтобы снять блок и увидеть скрытый контент или ссылку на закачку, подпишитесь на обновления блога.

В каждом письме публикуется код разблокировки.

Пользуйтесь кодом только из последних, пришедших вам на Email, писем. Закрыть »

Постов 204
Отзывов 5336