在自定义查询中选择类别

时间:2010-11-04 作者:Martin-Al

我确信这个问题被问了很多,但我想不出来,因为所有不同的查询帖子的方法都让我困惑。。

这是我当前的代码
我如何告诉代码只能从类别ID#22获取帖子?

<?php 
$querystr = " 
    SELECT post_id, AVG(meta_value) AS total, COUNT(post_id) as num_karakter
    FROM sk_postmeta
    WHERE meta_key = \'krit_karakter\'
    GROUP BY post_id
    ORDER BY total DESC
    LIMIT 5
    "; 
$pageposts = $wpdb->get_results($querystr, OBJECT); 

if ($pageposts) { ?>
    <ul class="smartbar-items">
    <?php foreach ($pageposts as $post): 
        setup_postdata($post); ?> 
        <li><a href="<?php echo get_permalink($post->post_id);?>"><img src="<?php bloginfo(\'url\');?>/wp-content/files_mf/<?php echo get_post_meta($post->post_id, \'game_poster\', true); ?>" width="80" height="110" alt="<?php echo get_the_title($post->post_id);?>" />  <br /><?php echo get_the_title($post->post_id);?></a></li>
    <?php  endforeach; ?>
    </ul>

谢谢你的帮助!

2 个回复
最合适的回答,由SO网友:Norcross 整理而成

我会把它分成两部分。

将此添加到您的函数中。用于全局获取自定义字段的php文件:

function get_custom_field($key, $echo = FALSE) {
global $post;
$custom_field = get_post_meta($post->ID, $key, true);
if ($echo == FALSE) return $custom_field;
echo $custom_field;
}

按如下方式构建查询:

我似乎无法让markdown玩得很好,所以这里是Pastie中的代码http://pastie.org/1294594

SO网友:Wadih M.

您需要加入sk\\u term\\u relationships表。

$querystr = " 
 SELECT post_id, AVG(meta_value) AS total, COUNT(post_id) as num_karakter
 FROM sk_postmeta p
 inner join sk_term_relationship t on p.post_id = t.object_id 
  and t.term_taxonomy_id = 22
 WHERE meta_key = \'krit_karakter\'
 GROUP BY post_id
 ORDER BY total DESC
 LIMIT 5
"; 

结束

相关推荐

WordPress删除wp_List_Categories中最后一项的分隔符

我正在尝试删除最后一个分隔符(通常是<br/> 标记,但我将其从wp\\u list\\u categories的最后一个链接更改为“/”)。基本上我想要这个:类别1//类别2//类别3//看起来像这样:类别1//类别2//类别3以下是我当前使用的代码:<?php $cat_array = array(); $args = array( \'author\' => get_the_author_meta(\'id\'),&#x