Всем привет! Сегодня на SEO-Mayak.com мы продолжим настраивать WordPress и узнаем, как добавить форму комментариев на страницы.
Вы наверное раз заходили к кому-нибудь на страничку «Обо мне» или «О Блоге» или на другие информативные страницы, где авторы пишут о себе и о своем проекте
Нередко, проникшись симпатией к человеку, появляется желание написать ему несколько приятных строк, но к сожалению под статьей мы не обнаруживаем форму комментариев. А ведь согласитесь, хорошие комментарии будут не лишними на блоге.
Я уже писал о важности комментариев в статье «Подписка на комментарии. Плагин Subscribe To Comments«, и в статье «Благодарим посетителя за первый комментарий«.
Не зря же у Яндекса для индексации комментариев работает отдельный робот — YandexBlogs. О роботах Яндекса я писал в статье «Файл robots.txt — запрет индексации для Яндекса и Google. Создание правильного robots.txt для WordPress»
И все же, почему там случается, почему нет формы комментариев на страницах? Все очень просто. Во всех шаблонах WordPress есть функция вывода формы комментариев к записям, а вот странички часто не заслужено «обижают», но поправить это можно и даже нужно.
Вот и у меня наконец дошли руки, чтобы добавить форму комментариев на страничку «Обо мне». Чем мы сейчас и займемся.
Как добавить форму комментариев на страницы
На самом деле, чтобы вывести форму комментариев на страничках блога, ничего сверх сложного делать не придется.
За вывод функции комментариев отвечает следующий код:
<?php comments_template(); ?>
Точно такой же код выводит форму комментариев и в записях.
Для редактирования файлов советую, вместо встроенного редактора WordPress, пользоваться текстовым редактором Notepad++ .
Редактировать файлы следует не на самом сервере, а в скачанной с помощью FTP клиента на свой домашний компьютер полной копии блога. Как это делается я подробно описывал в статье «FTP клиент Filezilla»
Если открыть файл single.php, отвечающий за раздел, в котором выводятся все записи нашего блога, то можно посмотреть, где расположен код. Находится файл single.php в папке с нашей темой: wp-content -> themes -> название темы -> single.php
Вот он «родной», подчеркнутый красным.
И теперь нам надо вставить этот код в другой файл, который отвечает за страницы блога и называется он page.php. Путь к нему выглядит также.
Открываем для редактирования файл page.php и ищем в нем знакомую строчку:
<?php endwhile; else: ?>
И перед ней вставляем код вывода формы комментариев:
<?php comments_template(); ?>
Сохраняем любуемся только что проделанной работой.
Но сразу же возникает другая проблема. Появляется форма комментариев на страничке с картой сайта, обратной связью и так далее, которая в принципе там не нужна.
Да уж проблема! Да не проблема это вовсе, просто на этих страницах надо отключить комментирование.
Как это сделать? Да очень просто. Идем админка блога -> все страницы -> карта сайта и в левом верху ищем вкладку «Настройки экрана»
Нажимаем и сверху выпадет панель с настройками:
Где на надо поставить галочку возле строчки «Обсуждение».
Далее обращаем свое внимание на появившийся в низу, сразу после окна редактора WordPress, одноименный раздел.
В котором мы просто убираем галочку возле строчки «Разрешить комментарии». Сложного ничего нет, только теперь надо проделать данную процедуру со всеми страницами, где комментарии придутся не к месту.
Не трудно догадаться, что таким образом можно отключать возможность комментирования и к некоторым записям, но это очень редко когда требуется.
В будущем будут еще выходить статьи связанные с повышением функционала комментирования, так что советую подписаться на обновления блога
До встречи!
С уважением, Виталий Кириллов
Интересно было бы почитать про то, как убрать ссылки вида ?replytocom= из древовидных комментариев. Нужен хак!
Здравствуйте Алексей, рад снова видеть Вас на блоге. Мне только не понятно зачем их убирать? Ясно, что они создают дубли страниц, в таком случаи достаточно прописать в файле robots.txt две директивы: [php]Disallow: /*?*
Disallow: /*?[/php]
Я думаю на этом проблема будет решена!
как бы не так! гугл хранит все эти дуюли в сопливом кэше и плюс долго индексирует сайты, т.к. у него уходит много времени на обход всех этих ссылок, плюс хостинг нагружает! В Яндексе порядок. Есть плагин «SEO by Yoast», там есть опция убирания этих ссылок. Вот бы такой хак отдельно от плагина придумать.
Надо будет поразмыслить над этим!
Алексей, а Вы не пробовали после запрета в файле robots.txt удалить эти URL адреса через инструменты вебмастера Google. Панель вебмастера -> Ваш сайт -> Оптимизация -> Удалить URL адреса?
Виталий, для меня это всё тёмный и страшный лес, даже боюсь заходить в папки сайта))) Но, скажите, пожалуйста, плагин с древовидными комментариями активировала и лучших комментаторов, но до конца, видимо, не настроила, нужен ли он сайту, может вполне можно обойтись старыми настройками? И ещё, у Вас есть статья об ответных комментированиях,настроенных плагином Thank Me Later, дело в том, что если я начинаю благодарить за комментарий, оказываюсь самой разговорчивой на собственном сайте, как отключить саму себя, родную? И ещё: С большой благодарностью написала о Вашем сайте статью: Вот это сервис! В частности, о сокращении картинок и фотографий, приглашаю в гости, жду Вашего мнения)))
Людмила, зайдя к вам на блог я поразился Вашим вкусом — очень красиво все оформлено. К сожалению на Вашем блоге не все в порядке, очень много мягко сказать недоработок, которые сильно влияют на развитие Вашего проекта. Про плагин Thank Me Later я знаю, он у меня был установлен на кулинарном блоге и я его убрал, по причине аналогичной с птичкой 🙂 и Вам того же советую. В общем напишите мне на e-mail через форму обратной связи и я Вам дам несколько советов, так как я не хочу публично обсуждать столь деликатные моменты. На ваш вопрос — «Как отключить себя родную» я задам встречный — как Вы выводили форму лучших комментаторов: с помощью кода или плагина? Обычно прописывается свой E-mail и Вы перестаете быть лучшим комментатором.
не пробовал, т.к. это запрещают правила использования данного инструмента. К тому же, там вроде по одному урлу только удалять, по маске нельзя. Тут надо что-то другое, чтобы робот сам убрал все эти ссылки из индекса, а потом удалить сами ссылки с сайта. Я кое что уже сделал по примеру западных блогов. теперь буду следить за положительным результатом
Я так полагаю Алексей, что вы открыли индексацию этих страниц в robots.txt но запретили в их в вебмастере Гугла. Я правильно Вас понял?
точно
Алексей, вы уж или вопросительные знаки ставьте или восклицательные, а то так ни я ни читатели не поймут, что вы имели ввиду 🙂
wordpress сам генерирует на каждой странице тэг noindex для роботов, а он более «мощный», чем директива в robots.txt
Да и толку что ты их удалишь — новые появятся. Нужно кардинальное решение проблемы
Как кардинальное решение могу предложить редирект через .htaccess У меня такой проблемы нет, но пишут, что помогает/ По крайней мере дубля точно не будет!
[php]RewriteCond %{QUERY_STRING} replytocom=
RewriteRule ^(.*)$ /$1? [R=301,L][/php]
что-то ничего не происходит с этим кодом, редиректа нет, но это всё-равно не решение, надо избавляться от сотни лишних ссылок (редиректов) на страницах.
А кто пишет что помогает?
Вот твои «сопли» http://www.google.ru/#q=replytocom+site:seo-mayak.com&hl=ru&newwindow=1&safe=active&filter=0&bav=on.2,or.r_qf.&bvm=bv.43828540,d.bGE&fp=7a87685f1f182f0d&biw=1163&bih=817
Ну все, я сейчас упрусь рогом. Вы меня убедили! А пишет вот этот товарищ — http://mojwp.ru/replytocom-301-htaccess.html
Работает редирект прекрасно, норм решение посмотрю, что будет в дальнейшем, пропадут ли сопли!
Как интересно! Полезная статья!
Прочитала Людмилин коммент)) Чувствую себя так же- как в темном и страшном лесу))
А лошадка у нее красивая, в смысле Единорог!
Здравствуйте Оксана, рад видеть Вас на блоге! В темном и страшном лесу мне безумно интересно! 🙂
спасибо за наводку, новая статья, не видел раньше. Но я всё же думаю что мой метод сработает тоже, и при этом не будет кучи редиректов, которые тоже не есть гуд. Ведь у западного блоггера сработало ведь. Те кто пишет что у них это не помогает, они не открывают индексацию в robots.txt. Посмотрим.
Алексей, это даже хорошо что я выбрал один вариант, а ты другой. Потом посмотрим, что как работает и будет больше информации!
и всё равно потом нужен будет хак чтобы убрать все эти ссылки со страниц вообще 🙂
Посмотрим, может что и откопаю 🙂
Виталий, у меня с этими комментариями большие проблемы. Ну никак не удается сделать их в виде древовидных и получить возможность делать «ответ» на конкретный комментарий. Садятся они по времени и метятся цифрами. 1, 2, 3 и т.д. И никак это не убирается. Я уже и то делала, и это
Здравствуйте Анна, возможно у Вас шаблон не поддерживает Древовидные комментарии, хотя надо разбираться детально!
Google — это крупный и своеобразный товарищ. Как уже писал в статье: выкидывает очень медленно.
Кому не в терпежь, могут руками удалить лишние ссылки в панели вебмастера.
Здравствуйте Виталий! Рад видеть Вас на блоге. Я как раз воспользовался редиректом по Вашему совету.
Алексей, а Вы не пробовали после запрета в файле robots.txt удалить эти URL адреса через инструменты вебмастера Google. Панель вебмастера -> Ваш сайт -> Оптимизация -> Удалить URL адреса?
Насчет УДАЛИТЬ… Оставляла ссылку на любопытную статью в скайпе… а вас господин, с высоко задранным носом не дождешься.. Себе хуже делаешь, если что. Потому как даже просто информация бывает очень нужная и полезная. Так вот смысл в том, что то что под запретом индексации невозможно переиндексировать роботу, потому мои картинки не удалились… Сейчас у меня 226 статей показывает и RDS bar и поиск и другой плагинчик браузера. Хотя всего вместе со всеми страницами 180 на блоге. Откуда еще 46 непонятно. Ну да ладно, спасибо за помощь как нибудь разберусь или так жить буду.
Алексей, большое спасибо за статью. В моей новой теме не отображались комментарии к страницам. Решил сегодня устранить этот не достаток. Посмотрел две статьи, попробовал ни чего не получилось. Почитал вашу статью, сделал и все получилось. Все просто и понятно, еще раз спасибо.
Подпишусь на ваш полезный блог.
Сергей, я рад, что мой блог оказался для Вас полезным!
Спасибо тебе, добрый человек). А Я уже перелапатил сотни страниц в сети в поисках плагина а тут все как всегда просто.
Пожалуйста!
Спасибо за статью!!!
Очень полезная информация. Обязательно приму к сведению.
Здравствуйте, Виталий! После обновления версии WordPress «потерялась» форма комментариев. В файле single.php все прописано, но выходит ошибка Fatal error: Call to undefined function st_related_posts. Не подскажете, в чем причина?
Здравствуйте Оксана! Скорее всего причина кроется в плагине Related Posts. Удалите плагин и все должно восстановиться. Если нет, то пишите.
В данный момент вообще все плагины отключены. Плагин Related Posts удален. Ситуация не изменилась.
Виталий, спасибо, разобралась. Очень трудно плавать в серной кислоте ))
Виталий, я новичок в деле создания сайта, скажите, пожалуйста, если я правильно поняла без текстового редактора Notepad++ и без скачанной с помощью FTP клиента на свой домашний компьютер полной копии блога, невозможно добавить форму комментариев на страницы сайта? дальше по описанию все не так уж сложно кажется, а вот с этими пунктами, боюсь не справиться.
Здравствуйте Антонина! Можно воспользоваться редактором, что находится в админке WordPress: Внешний вид -> Редактор.
Виталий, а у меня в page.php стоит , а не
как быть в этом случае?
Антонина, вы включили комментирование, в админке?
Да, Виталий, везде галочки стоят! В теме сайта не предусмотрены комментарии на страницах.
Антонина, советую Вам набраться знаний и потом вернуться к данному вопросу. В комментариях я Вам не смогу объяснить что к чему. Мне надо хотя бы взглянуть на файл page.php, но как я понял, Вы не сможете его скачать и прислать мне, так как не умеете обращаться с FTP клиентом.
Спасибо, Виталий! Буду набираться знаний! 🙂
Виталий, я все-таки рискнула и попробовала вставить код комментариев в page.php, несмотря на некоторые несовпадения в картинке. Всё получилось!!! Спасибо большое за статью!
Как Видите Антонина, смелость города берет! Я рад, что у Вас все получилось.
Здравствуйте! Вы не могли бы мне помочь! У меня в файле single.php есть только вот такой код:
а в файле page.php стоит вот такой:
То есть вроде как все есть, а комментировать можно не все заметки. Если Вам несложно, подскажите пожалуйста в чем тут загвоздка! Благодарю!
Здравствуйте Алсу! Воспользуйтесь преобразователем, чтобы защита пропустила код.
Здравствуйте! Вы не могли бы мне помочь! У меня в файле single.php есть только вот такой код:
<?php
// If comments are open or we have at least one comment, load up the comment template
if ( comments_open() || '0' != get_comments_number() )
comments_template( '', true );
?>
<?php endwhile; // end of the loop. ?>
а в файле page.php стоит вот такой:
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', 'page' ); ?> <?php comments_template( '', true ); ?>
<?php endwhile; // end of the loop. ?>
То есть вроде как все есть, а комментировать можно не все заметки. Если Вам несложно, подскажите пожалуйста в чем тут загвоздка! Благодарю!
Алсу, функция вызова комментариев в файлах single.php и page.php есть.
Вот она:
Посмотрите в админке, разрешены ли комментарии на данных страницах:

Там все галочки проставлены, там я первым делом просмотрела! Спасибо!
Здравствуйте, никак не получается вывести форму комментариев на страницах. Делала все как описано в статье, и галочки в настройках все стоят. Но формы как не было так и нет…Подскажите, как еще можно ее вывести? спасибо.
Здравствуйте Наталья! шаблоны все разные, поэтому я не могу вам дать точные рекомендации.
Спасибо вставила на странички себе возможность комментировать. Правда это можно сделать прямо в редакторе. Без входа по ftp. И заняло это считанные секунды!!!
Сделала, спасибо, правда не все совпало, немного по другому написано было в теме, но я уже привыкла, у меня все не так, может тему уже поменять?
На счет темы я вам советовать не могу, каждый воле тему сам выбирать.
Можно ли сделать так, чтобы галочки разрешения комментариев изначально были сняты?
Павел, галочки разрешения комментариев, к той или иной записи, снимаются в админке.
А мне вот нужна форма добавления предприятий на ресурс, таким скриптом не поделитесь ?
К сожалению Роман такого скрипта у меня нет.
А можно так сделать, чтоб перед добавлением комментария я могла его как админ удалить или опубликовать?
Виктория, идете в админку, далее: Настойки -> Обсуждение -> Перед появлением комментария. Ставите галочку в пункте «Комментарий должен быть одобрен вручную».
Здравствуйте, Виталий.
Пару месяцев назад начала знакомиться с чудо-Вордпрессом.
Очень благодарна за Ваши статьи! Я так и php скоро уже освою)))
У меня вот вопрос по комментам.
Делаю свою тему на ВП, с полного нуля. Вроде структуру сделала, все работает. А вот комменты по Вашему способу не отображаются почему-то.
Прочитала что за них отвечает файл comments.php в папке темы, но есть и стандартный ворпресовский. В папку темы я такой файл не добавляла (еще не разобралась что туда писать) а вот почему стандартный не вызывается не пойму.
Здравствуйте Лика! А какой функцией вы вызываете вcтроенную в WordPress форму комментариев?
Виталий, по Вашей инструкции в файл page.php вставляю <?php comments_template(); ?>
и тишина…
Уже и отображать комменты включила, и сама комментов погаписала…
Куда еще можно копнуть?
Лика,встроенную форму комментариев выводит функция comment_form().
Виталий, спасибо, получилось!
Но я еще вернусь с вопросами))) Слишком мало информации о создании своей темы с нуля да еще и для блондинок. Ваш сайт, да еще парочка — самые лучшие, чтобы я без вас делала?
Спасибо Лика за добрые слова!
Снова я. Ну просто уже принципиально важно разобраться!
Все работает, стили настроила.
В файле single.php вот такой блок выводит:
<div class="testy">
<?php while (have_posts()): the_post();?>
<?php
if ( comments_open() || get_comments_number() ) {
comments_template();
}
?>
<?php endwhile; ?>
</div>
Почему-то когда я этот же вызов копирую в файл page.php — ничего не выводится? В админке комменты включила.
Лика, надо в каждом случаи разбираться. Ищите, я уверен, что Вы справитесь! Вы правильно сказали, что это «принципиально важно» и я думаю важно, чтобы Вы сами справились.
Здравствуйте! У меня нет в Paga.php строчки «» — что делать?Вот скопировал, то что я увидел:
Виталий, добрый день. Подскажите, я сделал все, как указано и вроде все отлично, комментарии появились на страницах. Однако, на страницах, где я запретил комментарии — надпись «комментарии запрещены». Как бы не очень красиво, пришлось опять выключить комментарии. Можно это убрать?
Здравствуйте Валерий!
Темы конечно все разные, но думаю данную строчку надо искать в файле comments.php. Без перевода она может выглядит так: «Comments are closed».
Большое спасибо за советы. Веду блоги с 2009 года и периодически после обновления шаблонов или версий вордпресс функция вывода комментов слетает. Очень рада, что есть ваш сайт, который помогает решить проблему. Успехов вам!
Здравствуйте. С FiliZila справился. Notepad к ней подключил.Вопрос: «Если открыть файл single.php, » … Где этот файл найти?
Здравствуйте Игорь!
Путь такой: wp-content/themes/Название вашей темы/single.php
Спасибо. Вот добавил: prntscr.com/cvq8vw А как обратно всё это закачать ?
Просто закачиваете файл на сервер, в ту же директорию и в появившемся сообщении выбираете «заменить».
Благодарю. Что там сделал и комментарии на страницах появились.
Такой вопрос. На Вордпрессе есть кнопка «Забыли пароль». Есть мнение, что почти любой желаюший может нажать эту кнопку, и если у него есть доступ к моей почте, он может зайти м поменять пароль к Вордпрессу. Можно ли убрать эту кнопку ? prntscr.com/cvxg33
А у вас есть гайд по установке сервиса для комментирования GetRate?
У меня разрешены комментарии в настройках обсуждения, в свойствах записей, в настройках экрана. Форма присутствует и заполняется. Но при отправке wordpress выдает, что страница не найдена и комментарии не сохраняются.
Спасибо!
Здравствуйте, Игорь! Спасибо за полезную статью. Недавно наткнулся на реально крутой плагин (AnyComment) с возможность авторизации через ОК и ВК. Пока еще тыкаюсь конечно, но полет отличный! Надеюсь, что скоро выйдет еще больше функций!! Пробовали такой?
Создатель плагина не палится аватаркой, крутой крауд-маркетинг. Хотя плагин ничего такой)