Wordress & SEO

WordPress: Комментарии на отдельной странице

17.01.2008 | Просмотров: 12 840

Сегодня напишу о том, как используя плагин wp-print, вывести комментарии и трекбеки на отдельную страницу.

Задача - комментарии wordpress на отдельную страницу:
1. Убрать комментарии со страницы полной новости (http://site.ru/polnaya-novost/)
2. Сделать вывод комментариев на отдельную страницу (http://site.ru/polnaya-novost/comments/)

Приступим
Качаем сам плагин отсюда.

По умолчанию плагин выводит страницу для печати (http://site.ru/polnaya-novost/print/). Для красоты поменяем print на что угодно, в нашем случае на comments.

Открываем файл print.php и на 54, 56 строке заменяем print

  1. if(substr($print_link, -1, 1) != '/' && substr($wp_rewrite->permalink_structure, -1, 1) != '/') {
  2. $print_link_text = '/print';
  3. } else {
  4. $print_link_text = 'print';
  5. }

на comments.

  1. if(substr($print_link, -1, 1) != '/' && substr($wp_rewrite->permalink_structure, -1, 1) != '/') {
  2. $print_link_text = '/comments';
  3. } else {
  4. $print_link_text = 'comments';
  5. }

Убираем с полной новости комментарии. Те кто не знает это такая строчка

<?php comments_template(); ?>

и вместо неё пишем

<a href="<?php the_permalink() ?>comments/">ОСТАВИТЬ КОММЕНТАРИЙ</a>

Открываем файл wp-print.php и после 14 строки заменяем всё на то, что у Вас в шаблоне single.php
+ к этому добавьте вывод комментариев на желаемое место.

<?php comments_template(); ?>

Примерно получится так:

<?php
### Variables
$links_text = '';
 
### Actions
add_action('init', 'print_content');
 
### Filters
add_filter('wp_title', 'print_pagetitle');
add_filter('comments_template', 'print_template_comments');
 
### Print Options
$print_options = get_option('print_options');
?>
 
<?php get_header(); ?>
... ... ...
<?php comments_template(); ?>
... ... ...
<?php get_footer(); ?>

Далее всё сохраняем и устанавливаем плагин (документация по установке внутри)

Готово!
Естественно, способ не подойдет для тех, что уже использует плагин wp-print, но это только лишь один из способов, как из подручных средств решить поставленную задачу.

П.С. Небыло времени довести до ума, но все прекрасно работает. Пример смотрите на этой же странице.

Добавлено 3:43
Не забудьте добавить в robots.txt

Disallow: /comments/

Оставить комментарий для " WordPress: Комментарии на отдельной странице " (Комментарии (14))
  1. pokrovskiy

    интересное решение, такое на fishki.net есть, но движок у них на dle. попробую обязательно

  2. Донких От

    Скажите, а зачем добавлять Disallow: /comments/ в robots.txt?

  3. admin

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

    Как управлять индексированием сайта, используя robots.txt
    http://www.rambler.ru/doc/robots.shtml

  4. Гриshа

    ага! поставил! всеё работает, но помоему этот метод нужно доработать, т.к. много мусора в коде остается т.е. ненужного кода много.
    автору спасибо!

  5. Доминик

    напишите плагин!

  6. Оскар

    вроде работает
    поставил вместо comments — commentall
    и по ссылке на комменты отображаются только комменты без самой записи.

  7. Я

    Скопировал папку с палгином в папку плагины на моём сервере
    актировал плагин
    вставил [print_link] в мой пост
    при нажатии на печать тсраница просто обновляется, но не появляется подготовленная для печати страница.
    Что делать?

  8. Виктор

    Довольно удобно, надо взять на заметку, благодарю!

  9. Адриана

    Спасибочки за код, использую обязательно

  10. Vanyata

    А вообще какие еще папки кроме комментариев нужно в роботс добавлять? И вообще это не вредит сайту?

  11. Sonikelf

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

  12. r4qlpnn

    Бесплатные скрипты для XWeb Human Emulator

  13. Санкт Петербург

    Как сделать данный вариант для нашёго сайта?

  14. Юрий

    Спасибо за плагин

© 2007-2012 Kimochi.ru Designed by Kimochi Design