Показать только пинг (Pingbacks+Trackbacks) номер на Wordpress

Есть ли способ отобразить только количество пингов (число) в Wordpress?

На самом деле есть comments_number функция, но показывает общее количество комментариев, пингбэков и трекбэков.

2 ответа

Следующий код работает на WordPress 2.9.1. Он может работать на других версиях, но я протестировал его только с 2.9.1.

<?php
global $wpdb;
$post_id = get_the_ID();
$total_ping_count = $wpdb->get_var("SELECT count(comment_id) FROM $wpdb->comments WHERE comment_type = 'pingback'");
$total_approved_pings = $wpdb->get_var("SELECT count(comment_id) FROM $wpdb->comments WHERE comment_type = 'pingback' and comment_approved = 1");
$post_ping_count = $wpdb->get_var("SELECT count(comment_id) FROM $wpdb->comments WHERE comment_type = 'pingback' and comment_approved = 1 and comment_post_id = $post_id");
echo "The total number of pings on this site is $total_ping_count.\n";
echo "The total number of approved pings on this site is $total_approved_pings.\n";
echo "The total number of approved pings on this post is $post_ping_count.\n";
?>

Приведенный выше код дает счет только для пингбэков. Если вы хотите трекбеки вместо пингбеков, просто поменяйте comment_type = 'pingback' в comment_type = 'trackback' или если вы хотите, чтобы комбинированный счетчик изменился на comment_type IN ('pingback', 'trackback'),

Не совсем уверен, что вы хотите: показывать только пингбэки? Если это так, и я не пробовал, но шаблон тегов /wp list comments "WordPress Codex показывает список пингбэков и опций.

Другие вопросы по тегам