【发布时间】:2013-01-15 06:04:43
【问题描述】:
我遇到了一个小的查询问题,也许您可以帮我解决。我正在尝试从具有特定评论元的帖子中获取所有 cmets。这是我目前所拥有的:
$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments INNER JOIN wp_commentmeta WHERE comment_post_ID = '256' AND comment_approved = '1' AND meta_key = 'bestcomment' AND meta_value = 'yes' "); ?>
<ul id="bestcomment">
<h2>Best Comment</h2>
<?php
if ( $comments ) : foreach ( (array) $comments as $comment) :
echo '<li class="recentcomments">' . sprintf(__('%1$s on %2$s'), get_comment_author_link(), '<a href="'. get_comment_link($comment->comment_ID) . '">' . get_the_title($comment->comment_post_ID) . '</a>') . '</li>';
endforeach; endif;?></ul>
这篇文章应该只有一条评论。不幸的是,查询显示相同的结果 24 次。所以循环肯定有问题。想法?
【问题讨论】:
-
感谢 JW,我解决了这个问题: get_results("SELECT * FROM $wpdb->cmets INNER JOIN $wpdb->commentmeta ON($wpdb- >cmets.comment_ID = $wpdb->commentmeta.comment_id) 其中comment_post_ID = '256' AND comment_approved = '1' AND meta_key = 'bestcomment' AND meta_value = 'yes' "); ?>