Wordpress 从GDRating获取meta_值

Wordpress 从GDRating获取meta_值,wordpress,Wordpress,我正在尝试使用以下sql从GD评级表中获取每个帖子ID的元值: $querystr = "SELECT meta_value FROM $wpdb->gdrts_itemmeta WHERE meta_key LIKE 'stars-rating_rating'"; $ratings = $wpdb->get_results($querystr); foreach ($ratings as $rating) { $rating->meta_value; } $ratin

我正在尝试使用以下sql从GD评级表中获取每个帖子ID的元值:

$querystr = "SELECT meta_value FROM $wpdb->gdrts_itemmeta WHERE meta_key LIKE 'stars-rating_rating'";
$ratings = $wpdb->get_results($querystr);
foreach ($ratings as $rating)
{
    $rating->meta_value;
}
$ratingku = get_post_meta($post->ID, $rating, true);
但它失败了。它返回一个单词:ARRAY


如何使用SQL或查询从插件为每篇文章创建的另一个表中获取meta_值?

要获取文章使用的评级值,请执行以下查询:

global $wpdb;

$querystr = "SELECT meta_value AS rating FROM ".$wpdb->prefix."gdrts_itemmeta INNER JOIN ".$wpdb->prefix."gdrts_items ON ".$wpdb->prefix."gdrts_items.item_id = ".$wpdb->prefix."gdrts_itemmeta.item_id AND ".$wpdb->prefix."gdrts_itemmeta.meta_key = 'stars-rating_rating' AND ".$wpdb->prefix."gdrts_items.id = ".$post->ID; 

$result = $wpdb->get_row($querystr);

echo $result->rating;

这是正确的代码吗?因为在for循环中,您没有为变量分配$rating->meta_值。是的,这是正确的。也许我的代码错了。有什么建议吗?您正在get_post_元中使用$rating,但该变量未初始化或赋值。是的,这对$querystr是有效的,但当我尝试将其放入fputcsv的循环中时,它会得到ERR_INVALID_响应。我使用以下代码:global$post;全球$wpdb$arr_post=get_posts$arg;foreach$arr_post as$post{$querystr=..;$result=$wpdb->get_row$querystr;$getrating=$result->rating;fputcsv$file,array$getrating,;}谢谢@Jainil@pije76您应该在条件中使用$result,因为对于某些帖子,您可能会得到空结果。还有,哪一行给了你这个错误?你是对的。现在问题解决了。非常感谢你。顺便问一下,如何获取实体是否是gdrts_items表中的注释?在查询中使用注释id而不是post id。