Здравствуйте уважаемые Дамы и Господа! Меня зовут Владимир Савельев и я автор этого блога. В этой статье я расскажу как убрать комментарии в wordpress различными способами.

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

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

Статьи по теме:

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

Стоит ли убирать комментарии на сайте? Я считаю, что делать этого не стоит.

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

Но если я Вас не убедил и Вы точно решили их убрать, то разберем с Вами некоторые способы это сделать...

Как убрать комментарии в wordpress

Существует несколько способов убрать комментарии на WordPress. Сделать это вы сможете через административную панель сайта. Для этого зайдите в админку и перейдите в меню «Консоль». Здесь вы увидите пункт «Включите или выключите комментарии».

Перейдите по нему и на открывшейся странице уберите галочку возле пункта «Разрешить оставлять комментарии на новые статьи».

Еще один способ выключить комментарии, можно непосредственно на отдельной странице или в записи. Для этого переходим например в записи и возле названия статьи появляются дополнительные функции.

Нажимаем свойства и видим дополнительные возможности для поста.

Также в админке вы сможете настроить комментарии к каждому отдельному посту. Для этого зайдите в интересующую вас запись, спуститесь вниз по странице и в пункте «Обсуждение» вы можете убрать галочку возле строки «Разрешить комментарии».

Аналогично вы можете убрать возможность читателей комментировать отдельные страницы вашего блога. Для этого выберете с левой стороны административной панели меню «Страницы», перейдите в пункт «Все страницы».

Откройте интересующую вас и, спустившись по ней вниз в пункте «Обсуждение», уберите галочки возле строки «Разрешить комментарии». Теперь оставлять комментарии на этой странице читатели не смогут.

Если вы не находите у себя этого пункта, то поднимитесь в верхнюю часть страницы, где справа вы увидите кнопку «Настройки экрана», после нажатия на которую перед вами выпадет меню.

Здесь отыщите пункт «Обсуждение» и поставьте возле него галочку.

Массовое удаление комментариев и формы

Два описанных выше способа помогут вам убрать комментарии для новых записей. А как же быть, если на сайте уже есть готовые статьи и их очень много? Заходить в каждую запись и править её совсем не хочется, да и времени на это особо нет. Тогда вам следуют сделать следующее.

Откройте управление базы данных MySQL и, в зависимости от того, что вы желаете сделать, запустите такие запросы:

Убрать комментарии — UPDATE wp_posts SET comment_status = "closed"
Включить комментарии — UPDATE wp_posts SET comment_status = "open"

Только обязательно перед тем, как их выполнить, произведите бэкап вашей базы данных.

Как убрать комментарии в wordpress еще? Можно удалить их форму из папки темы вашего сайта. Для этого вам понадобится отредактировать некоторые файлы из шаблона.

  • page.php – в этом файле вы сможете убрать комментарии к страницам вордпресс;
  • single.php – а здесь к записям.

Произвести эти действия необходимо в настройках FTP-клиента. Для этого вам понадобится воспользоваться текстовым редактором. Самыми распространенными и удобными редакторами являются Notepad++ и Filezilla.

Откройте в редакторе, в соответствии от того, что вы хотите сделать (убрать форму комментариев к постам или к страницам), нужный файл. Найдите в шаблоне следующую строку:

И удалите её. После чего сохраните изменения и загрузите файлы на хостинг. При необходимости можете очистить кеш.

Если же вы желаете добавить форму комментариев к отдельной странице, тогда вам нужно будет открыть шаблон нужной страницы и добавить туда этот же код! После чего сохранить изменения и перезагрузить страницу. Теперь у читателей появится возможность оставлять здесь свои комментарии.

Как видите, ничего сложного в этом действии нет...

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

Если вы хотите удалить какой-то комментарий или несколько комментариев на вашем сайте, тогда зайдите в свою административную панель. Найдите из списка предложенного слева меню «Комментарии».

Здесь находятся все комментарии, оставленные посетителями. Вы можете удалить, отклонить, одобрить или пометить их, как спам. Произвести какие-либо действия можно как с каждым отдельным комментарием, так и со всеми вместе.

Если, например, вы хотите удалить все комментарии, то отметьте их, поставив галочку возле строки «Автор» и потом из списка действий выберете «Удалить».

На этом у меня все, надеюсь моя статья как убрать комментарии в wordpress Вам помогла и Вы выполнили поставленную задачу! До встречи в следующей статье!


С уважением, Владимир Савельев

Премиум-уроки от клуба webformyself

Это новый революционный продукт в области обучения сайтостроительству! Все лучшие видео-уроки собраны в одном месте и разделены на категории: WordPress, Joomla, PHP, HTML, CSS и JavaScript... База постоянно пополняется и уже сейчас в ней более 200 уроков! Всего за один год - Вы сможете стать опытным веб-мастером "с полного нуля"!

Подробнее

На многих блогах комментарии оформлены небрежно. Это, безусловно, не есть хорошо, ведь именно через комментарии происходит общение между автором блога и его читателями. Именно поэтому я предлагаю рассмотреть несколько полезных «штучек», которые помогут привести ваши комментарии в надлежащий вид. Итак, сразу приступим к делу.

Все написанное ниже я проделал и проверил сам. Каждый хак проверен для версий WordPress до 2.7 и после. Если есть отличия, код разбирается для обеих версий.

Проблема: Не зависимо от того, разрешаете ли вы своим читателям оставлять комментарии без предварительной модерации, их часто приходится редактировать, удалять или отправлять в «спам». По умолчанию WordPress показывает только кнопочку «Редактировать» (делается это при помощи функции edit_comment_link ()) , но кнопочек «Удалить» и «Спам» нет. Стоит добавить.

Решаем проблему: В первую очередь добавим небольшую такую функцию в functions.php нашего шаблона.

function delete_comment_link($id) { if (current_user_can("edit_post")) { echo " (Удалить)"; echo " (Спам)"; } }

Найдем что-то в духе:

И у нас появятся волшебные кнопки «Удалить» и «Спам». Очень надеюсь эти кнопочки вам не пригодятся, а все комментарии будут по делу.

2. Разделяем комментарии и трекбеки

Об этом я уже писал в (для версий WP 2.7 и выше).
Пожалуй стоит написать и для более старых версий.

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

Решаем проблему: Повторюсь, это способ для шаблонов WordPress до версии 2.7.

Открываем файл comments.php нашей темы и находим там примерно следующее:

Берем и заменяем этот код полностью на следующий:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
  • //Comment code goes here
  • < ul>

  • //Comment code goes here
    • Все гораздо проще, чем в версии 2.7 и выше. К тому же после разделения можно оформить стиль списка комментариев и списка трекбеков персонально.

      Проблема: Блоггеры ищут любой способ продвижения своего блога. Спаммеры везде. А вас не раздражают «левые» ссылки в комментариях? Если вы модерируете все комменатрии, то все понятно, ничего лишнего не пройдет. А если комментариев слишком много, времени на модерацию нет, комментарии публикуются без вашей проверки? Реальная проблема. Еще и WordPress дружелюбно превращает URL’ы в комментариях в активные ссылки.

      Решаем проблему: Открываем файл function.php нашей темы и добавляем следующий код:

      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 function plc_comment_post( $incoming_comment ) { $incoming_comment [ "comment_content" ] = htmlspecialchars ($incoming_comment [ "comment_content" ] ) ; $incoming_comment [ "comment_content" ] = str_replace ( """ , """ , $incoming_comment [ "comment_content" ] ) ; return ( $incoming_comment ) ; } function plc_comment_display( $comment_to_display ) { $comment_to_display = str_replace ( """ , """ , $comment_to_display ) ; return $comment_to_display ; } add_filter("preprocess_comment" , "plc_comment_post" , "" , 1 ) ; add_filter("comment_text" , "plc_comment_display" , "" , 1 ) ; add_filter("comment_text_rss" , "plc_comment_display" , "" , 1 ) ; add_filter("comment_excerpt" , "plc_comment_display" , "" , 1 ) ;

      function plc_comment_post($incoming_comment) { $incoming_comment["comment_content"] = htmlspecialchars($incoming_comment["comment_content"]); $incoming_comment["comment_content"] = str_replace(""", """, $incoming_comment["comment_content"]); return($incoming_comment); } function plc_comment_display($comment_to_display) { $comment_to_display = str_replace(""", """, $comment_to_display); return $comment_to_display; } add_filter("preprocess_comment", "plc_comment_post", "", 1); add_filter("comment_text", "plc_comment_display", "", 1); add_filter("comment_text_rss", "plc_comment_display", "", 1); add_filter("comment_excerpt", "plc_comment_display", "", 1);

      Все просто. Теперь, как говорится, html не пройдет. Весь html-код будет отображаться в комментариях как простой текст. Это, однако, не отключает автотрансформацию url в ссылку, но это и хорошо, пользователям не придется мучиться с копированием адреса в адресную строку браузера, чтобы перейти по ссылке. А вот интерес спаммеров к вашему блогу сразу уменьшится.

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

      Решаем проблему: В WP версии 2.7 и старше мало того что появилась функция ответа, так еще и все уже за нас сделано. Если же у вас WP от 2.7 и свежая тема, но ваши комментарии, как автора поста, ничем не выделяются от других комментариев, вам стоит всего лишь прописать в файле темы style.css стиль для класса bypostauthor , например:

      После этого сразу ниже вставляем:

    • Теперь необходимо присвоить класс, применяемый, если автор комментария является автором поста:

      Authorcomment{ color:#fff; font-weight:bold; background:#068; }

      Все просто, теперь вам остается только все красиво представить, все зависит от вашей фантазии.

      Итак, сегодня я рассказал вам про часть полезных «фишек» которые можно проделать с комментариями. У меня в запасе есть еще парочка трюков, так что обязательно подписывайтесь на RSS и ждите следующего выпуска. Жду ваших отзывов и комментариев. И если вдруг у вас возникнут какие то проблемы, то обязательно отписывайтесь в комментариях, будем разбираться.

      С уважением, Александр Алаев

      Часто случается, что приходится отключать комментарии в WordPress. Причины у всех бывают абсолютно разные.

      Кому-то нужно убрать форму комментирования из-за ненадобности, кто-то заменяет ее на различные решения от известных платформ комментирования (Disqus или Cackle), а другие просто убирают данный функционал по собственному желанию.

      Отключить комментарии в WordPress можно несколькими способами. Вы можете сделать это в панели администратора, запретив комментирования записей или страниц. А можно отключить комменты с помощью удаления куска кода в вашей теме. Давайте разберем оба варианта более подробно в виде пошаговой инструкции.

      Как запретить комментарии в WP к записям и страницам

      Для выполнения этой операции вам понадобится зайти в панель администратора и перейти на вкладку под названием Параметры — Обсуждение. На этой странице находятся все настройки вашего сайта относительно комментирования.

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

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

      Как удалить код комментариев в WordPress

      Если вам мало просто запретить комментирования ваших статей, то можно полностью удалить код этой функции вручную из самого кода вашей темы. Для этого вам нужно зайти в админпанель, нажать на Внешний вид — Редактор и справа выбираем single.php (одиночная запись).

      В этом файлы вам нужно найти следующий код:

      Эта функция отвечает за вывод формы комментариев в ваших постах. Если ее удалить, то и оставить отзыв уже никто не сможет, что нам и нужно. Убираем эту строчку и сохраняем наш файл. Те же манипуляции проводим и в файле page.php.

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

      Бывает, что пользователям нужно отключить комментарии в WordPress. Давайте разберемся как это сделать.

      Как всегда есть несколько способов. Выбирайте тот, который вам нужен.

      Отключение комментариев через панель управления

      1. Заходим в админку вашего сайта, затем в «Параметры» и «Обсуждение».

      2. Здесь мы снимаем галочку со строчки «Разрешить оставлять комментарии на новые статьи».

      Отключаем комментарии при редактировании страниц

      1. Если у вас на странице добавления или редактирования записи нет пунктов с настройкой обсуждений, то нажимаем «Настройки экрана».

      3. И теперь при редактировании страниц, для запрета комментирования убираем галочку с пункта «Разрешить комментарии».

      Отключение комментариев к записям

      Если вы хотите отключить комментирование к одной записи, то:

      1. Наводим курсор мыши на нужную запись и нажимаем «Свойства».

      2. Открылись свойства записи. Находим строку «Разрешить комментарии» и снимаем галочку. Нажимаем «Обновить».

      Если нужно убрать комментарии у нескольких записей, то делаем следующее:

      1. Сначала выбираем те записи у которых нужно убрать комментарии.

      2. Теперь выбираем действие с записями.

      Выбираем «Изменить». И нажимаем «Применить».

      3. Теперь в комментариях меняем «Как есть» на «Запретить». Жмем «Обновить».

      Убираем комментарии со всего блога

      1. Чтобы убрать все комментарии с блога нужно зайти в панель управления хостинга, в phpMyAdmin.
      2. Затем найти базу данных вашего сайта (справа).
      3. В появившейся табличке ищем «wp_comments».
      4. Напротив этой надписи находим окно «Browse».
      5. Щелкаем и в ней мы можем отключить комментарии, убрать их или удалить какой-то конкретный комментарий.

      Также убрать комментарии в WordPress можно в шаблоне или теме вашего сайта.

      1. Заходим во «Внешний вид», «Редактор».
      2. Ищем файл «Одна запись» single.php и удаляем «».
      3. Находим файл «Шаблон страницы» и удаляем такую же строчку, что и в предыдущем файле.

      Вот так разными способами можно отключить или убрать комментарии в WordPress.

      Лезть в код или не лезть? Раньше мы уже говорили, что форма комментариев немного сложна, и поэтому создатели все максимально упростили.

      Функция вызова комментариев простая и не имеет параметров

      Выглядит просто, но делает очень много. Фактически она создает огромное количество html кода и использует кучу php кода. Т.к. эта функция генерирует весь готовый html код, то нам придется иметь с ним дело без возможности как-то отрегулировать или настроить использованием параметров. Это может быть определенной проблемой, с учетом того, что мы не очень можем этот html код изменить. Не нравятся классы div? Не хотите использовать граватары? Желаете изменить порядок вывода строк?

      Со всем этим придется смириться и скрывать ненужные вещи с помощью css. С этой точки зрения вам нужно будет определиться - по какому пути предпочтений вы пойдете:

      wp_list_comments

      • легко использовать
      • встроенный функционал комментирования
      • встроенный функционал разбития на страницы
      • встроенный функционал древовидного отображения
      • css классы по умолчанию для базовых задач

      пользовательская функция комментариев

      • абсолютный полный контроль над всем
      • стандартные и пользовательские css классы
      • наличие плагинов для добавления нужного функционала

      Выбор метода формирования комментариев зависит от множества факторов. В общем, мы рекомендуем использовать wp_list_comments и не морочить голову. Если же вам нужно сделать что-то свое, особенное и специфическое, с желаемым функционалом и возможностями, и это желание подкрепляется знаниями, то использование пользовательских циклов даст возможность это все воплотить.

      Кроме этого есть старый добрый метод вывода комментариев с помощью цикла foreach, поэтому нам еще есть с чем разобраться.

      wp_list_comments() или пользовательский цикл?

      До версии 2.7 цикл вывода комментариев был на базе запросов к базе данных и отображался несколько извилистым, но хорошо понятным путем.

      Затем комментарии были обогащены дополнительным функционалом — постраничной навигацией и древовидной вложенностью. Эти возможности активировались через админку, и цикл foreach был заменен на уже показанную функцию wp_list_comments. Однако этот цикл по прежнему остается работоспособен, правда по понятной причине не поддерживая дополнительный функционал.

      Хотя wp_list_comments и не выглядит как цикл, но она делает все тоже самое, повторяет раз за разом запросы и вывод комментариев, пока они не закончатся, размечая их соответствующими тегами.

      Обычно готовый хтмл код одного комментария выглядит примерно так:

      1. Имя комментатора says:

        Спасибо, у вас супер сайт!

      Как видно, цикл вывода комментария содержит картинку-граватар, несколько дивов, много разных css классов, ссылку на автора и собственно текст комментария. Если это вас устраивает — то это хорошо, больше ничего делать и не нужно.

      В этом случае вы можете протянуть свои руки только к следующим доступным параметрам wp_list_comments:

      • размер аватары по умолчанию 32 пикселя
      • стили css — используя их названия можно изменить параметры на нужные
      • стиль вывода списка комментариев style. По умолчанию комментарии выводятся тегами неупорядоченного списка
          , но если вы вместо этого хотите использовать упорядоченный список
            , то используйте такой параметр "ol")); ?>
          1. тип type — строковый параметр, отвечающий за отображаемые комментарии. Доступные параметры — all, comment, trackback, pingback, pings. Pings означает, что будут выводиться вместе и трекбеки, и пингбеки. По умолчанию параметр равен all, т.е. все комментарии отображаются.
          2. текст ответа reply_text — определяющий, что будет написано на ссылке ответа на комментарий, обычно «Ответить»
          3. текст авторизации login_text — отображается в случае, если для ответа необходимо авторизироваться на сайте, обычно «Авторизируйтесь для комментирования»
          4. callback — имя пользовательской функции для отображения комментариев.
          5. Дополнительные параметры, доступны

        Это немного, но в большинстве случаев достаточно для минимально необходимых модификаций. Если нужно больше, то придется использовать пользовательский цикл либо вмешиваться в php код, написанный в comments.php, либо добавлять нужный функционал в functions.php.

        Шаманим в functions.php

        Для начала укажем в comments.php, что мы будем использовать свою пользовательскую функцию

        Теперь создадим в functions.php свою пользовательскую функцию

      • id="li-comment-">
        ");?> %s says:"), get_comment_author_link()); ?>
        comment_approved == "0") : ?>
        $depth,"max_depth" => $args["max_depth"]))); ?>
        Обратите внимание, что мы не закрываем тег
      • , т.к. вордпресс автоматически создаст закрывающие теги в зависимости от разметки вложенных комментариев.

        Будучи размещенным, данная функция будет вызываться при генерации комментариев и позволяет вносить в себя любые нужные правки. Фишка в том, что мы сделали все, что нам нужно, используя стандартную и достаточно ограниченную в настройках wp_list_comments()

        А теперь давайте тряхнем стариной - вместе с wp_list_comments поставим цикл foreach

        Такое использование позволит шаблону быть обратно совместимым со старыми версиями вордпресса.

        Теперь, зная как настроить цикл комментариев, давайте модифицируем его под свои нужды и применим несколько прикольных трюков.

        Реализуем постраничные комментарии

        Заранее никто не знает, что контент на сайте может привлечь сотни комментариев. К чему я клоню — мы все суперзвезды и успех может придти неожиданно. Запись с сотней комментариев может быть безумно длинной для просмотра и перемотки. В общем, мы конечно не боимся вертикальной прокрутки (в отличие от горизонтальной), но границы должны быть у всего. Типичный пост с 60 комментариями может быть до 20 тыс. пикселей в высоту!

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

        Включив постраничную навигацию, не забудьте добавить в файл comments.php функции для вывода ссылок «Раньше» «Позже»

        Эти ссылки будут автоматически появляться и разбивать простынку комментариев, при превышении заданного количества комментариев на одну страницу. Если комментариев меньше этого числа — ссылки не будут отображаться.

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

        • https://yoursite.com/ghost-dad-rocked/
        • https://yoursite.com/ghost-dad-rocked/comments-page-1/
        • https://yoursite.com/ghost-dad-rocked/comments-page-2/
        • https://yoursite.com/ghost-dad-rocked/comments-page-3/

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

        Чтобы избежать дублирования, есть несколько решений:

        1. Не использовать постраничные комментарии
        2. Использовать мета-теги для создания канонических урл для каждой записи
        3. Использовать плагин

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

        SEO for Paged Comments применяет еще более радикальный способ — убирая содержимое записи с страниц комментариев и заменяя на цитату или урезанную версию записи.

        Реализуем вложенные комментарии

        Вложенные древовидные комментарии позволяют посетителям писать ответ выбранному существующему комментарию, создавая развернутое обсуждение диалог. После активации этой возможности в настройках, возле каждого комментария появится ссылка «Ответить», позволяющая высказаться по конкретному комментарию.

        До появления такой возможности существовал стиль ответа выбранному автору, используя в тексте комментария его имя и знак @, типа «@Вася ты не прав!» С некоторой трансформацией этот способ прижился во многих приложениях в интернете и живет до сих пор, например, в твиттере. А в современных версиях вордпресса такое упоминание не нужно использовать.

        Теперь достаточно просто нажать на соответствующую ссылку «Ответить» и высказаться. После одобрения текста комментария он появится сразу же под комментарием, на который был написан.

        Если ваш шаблон не поддерживает такой вид комментирования, есть легкий способ добавить такую возможность:

        1. Делаем резервные копии файлов, что по идее должно уже войти в привычку
        2. Включаем вложенные комментарии в настройках Параметры→Настройки обсуждения→Разрешить древовидные комментарии
        3. Добавляем следующий код в header.php сразу же перед wp_head()
        4. Добавляем в comments.php непосредственно перед закрывающим тегом
        5. Проверяем, что