Отделение TrackBack ‘ов от комментариев
Возиникла мысль отделить TrackBack ‘и от комментариев. Во-первых, трекбэки среди комментариев мешают разговору, а во-вторых, отдельный список сразу же показывает, кто на тебя сослался. Не долго думая я пошел в гугл искать как это можно сделать. В итоге я нашел один вариант, но мне он не очень понравился, так как там был использован еще один запрос к базе, а это дополнительная нагрузка для блога. Дальше я не стал искать, а решил сам сделать способ без второго запроса.
Отделение TrackBack ‘ов от комментариев (для WordPress)
1. Находим файл шаблона с комментариями. У меня это comments.php.
2. Ищем код вывода комментариев. Выглядит он примерно так:
// ................................
// код вывода комментария
// ................................
?>
3. Внутрь цикла foreach вставляем:
if (get_comment_type() == "comment") { ?>
// ................................
// код вывода комментария
// ................................
?>
} ?>
Таким образом мы выводим данные только с типом “comment”. В итоге должно получится что-то подобное:
if (get_comment_type() == "comment") { ?>
// ................................
// код вывода комментария
// ................................
?>
} ?>
4. Теперь нам нужно вывести список трекбэков. Для этого в любом месте после вывода комментариев выводим trackbaсk ‘и с помощью подобного кода:
Трекбэки
-
foreach ($comments as $comment) : ?>
if (get_comment_type() != "comment") { ?>
- } ?>
Трекбэки выводятся так же как и комментарии, единственное что мы указываем, так это то, что выводить надо все, что не равно типу “comment”.
TrackBack ‘ам можно дать такой же дизайн, как и у комментариев.
Но есть одно но, при таком способе если трекбэков нет, то под записей
Трекбэки
ничего не будет, да и сам заголовок будет не к месту.
Если вам это не нравится, то проблему частично можно решить изменив код вывода трэкбэков на такой:
Трекбэки
-
$trackbacks = 0; ?>
foreach ($comments as $comment) : ?>
if (get_comment_type() != "comment") { ?>
$trackbacks++; ?>
- } ?> if (!$trackbacks) { ?> Трекбэков к записи нет } ?>
Теперь, если трекбэков нет, будет выведен соответствующий текст. Избавится от заголовка при отсутствии TrackBack ‘ов можно с помощью еще одного цикла. Но я не буду сейчас это рассматривать. Кроме того, заголовок можно вообще не указывать. И под конец, можно воспользоваться отдельным плагином, но опять же, это лишня нагрузка.
Все, теперь TrackBack ‘и выводятся отдельно от комментариев и не мешают обсуждению.
Немного не улавливаю суть этого трэкбэка??
fullseo, http://ru.wikipedia.org/wiki/Trackback
Другими словами если ты в своей статье упомянул какой-то блог, то на нем автоматически появится ссылка на твой.
о, как раз искал способ отделить trackback в wordpress от комментариев, а то оформление все сыпется.
Отделение TrackBack ‘ов от комментариев…
Возиникла мысль отделить TrackBack ‘и от комментариев. Во-первых, трекбэки среди комментариев мешают разговору, а во-вторых, отдельный список…
Отделение TrackBack ‘ов от комментариев…
Возиникла мысль отделить TrackBack ‘и от комментариев. Во-первых, трекбэки среди комментариев мешают разговору, а во-вторых, отдельный список…
Кстати, есть такой плагин, который отделает трекбеки от коментов, правда я забыл как он называется )) Хорошая статья, спс.
DimoninG, да, он где-то мне попадался, но я тоже уже забыл, как он называется. Пойму лучше сделать так, как я описал, чем устанавливать еще один плагин.
Киря Робски – это спам. Он пришел мне в 4 других блога с совершенно аналогичным сообщением.
DimoninG, понятно, удалил его.
[...] дополнение к статьте Отделение TrackBack ‘ов от комментариев. Я расскажу как избавится от заголовка при отсутствии [...]
[...] Отделение TrackBack ‘ов от комментариев [...]
[...] чтобы узнать как это сделать читаем статью Отделение TrackBack ‘ов от комментариев и ее продолжение. Далее нужно воспользоваться [...]
На Ваш сайт знакомый в аську ссылку кинул. Оказалось ,что не зря
Понравилось. Тепрь постоянно читать буду
Спасибо, себе отделил, но осталась одна проблемка: в комментах “ноуфоллоу” и “ноуиндекс”, а в сайдбаре без, как бы сделать наоборот? Способ через джиквери знаю, но уж очень это напрягает, может, как-то по-другому можно?
или вообще, как поставить ноуфоллоу для трекбеков (без автоплагинов), не могли бы привести примерчик, если его в другой класс засунуть, отличный от “комментов”? С ноуиндекс итак понятно…