Как разделить комментарии и трекбэки

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

Метод, описанный ниже, позволит убрать трекбэки из списка комментариев и раположить их ниже в виде отдельного списка.

1) Откройте файл comments.php и найдите следующую строку:

<?php foreach ($comments as $comment) : ?>

и вставьте после нее следующее:

<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type == 'comment') { ?>

2) Теперь найдите строку:

<?php endforeach; /* end for each comment */ ?>

и вставьте перед ней:

<?php } else { $trackback = true; } /* End of is_comment statement */ ?>

После вышеописанных действий в списке комментариев отсутствуют трекбэки. Теперь же необходимо сделать отдельный список для них.

3) Найдите эту строку:

<?php else : // this is displayed if there are no comments so far ?>

и вставьте перед ней:

<?php if ($trackback == true) { ?>
<h3>Трекбэки</h3>
<ol>
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != 'comment') { ?>
<li><?php comment_author_link() ?></li>
<?php } ?>
<?php endforeach; ?>
</ol>
<?php } ?>

Между <h3> и </h3> можно вписать что угодно, например, "Обратные ссылки", "На пост сослались" и т.д.

Если же Вы хотите отобразить трэкбэки перед комментариями, то вставьте код:

<?php if ($trackback == true) { ?>
<h3>Трекбэки</h3>
<ol>
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != 'comment') { ?>
<li><?php comment_author_link() ?></li>
<?php } ?>
<?php endforeach; ?>
</ol>
<?php } ?>

сразу перед вот этим кодом:

<h2 id="comments"><?php comments_number('No Responses', 'One Response', '% Responses' );?> to "<?php the_title(); ?>"</h2>

На этом все. Напомню, что все это работает если вы используете трекбэки.

Предыдущие записи из рубрики `Настройка WordPress`

Комментировать