您的基本问题是一个纯SQL问题。
$count = $wpdb->get_var(
\'SELECT COUNT( comments.comment_ID ) FROM \'. $wpdb->comments .\' as comments
LEFT JOIN \'.$wpdb->commentmeta.\' AS cmeta ON comments.comment_ID = cmeta.comment_id
WHERE user_id = 1
AND comment_approved = "1"
AND comment_type NOT IN ("pingback", "trackback" )
AND cmeta.meta_key = "rating"
AND cmeta.meta_value = 5\'
);
为了便于阅读,我把它整理了一下。
您使用该SQL所做的工作与您使用。。。。
$args = array(
\'type\' => \'\',
\'user_id\' => \'1\',
\'count\' => true,
\'meta_key\' => \'rating\',
\'meta_value\' => \'5\',
);
$count = get_comments($args);
您并没有明确地排除trackback和pingback,但我非常确定trackback和pingback永远不会有关联的用户ID,所以您是通过该机制排除它们的。