dongshi1880 2009-06-07 18:14
浏览 55
已采纳

wordpress get_categories()问题

I have created the function below which is intended to list the sub categories of the parent with the id of 3.

The function should also return meta data from the first post in each sub category.

This works (kinda) but instead of just getting one set of data, it returns 3 sets with different outcomes.

Any ideas why?

global $cat;
  global $post;
  $categories = get_categories('child_of=3');
  foreach ($categories as $cat) :
    $postslist = get_posts($cat->cat_ID, 'numberposts=1&order=DESC');
    foreach ($postslist as $post) :
        $option = '<li id="'.get_post_meta($post->ID, 'id', true).'">';
        $option .='<a class="preview" rel="'.get_post_meta($post->ID, 'thumbnail', true).'" ';
        $option .='href="'.get_bloginfo('url').'/'.$post->post_name.'">';
        $option .=$cat->cat_name;
        $option .='</a>';
        $option .='</li>';
    echo $option;
    endforeach;
  endforeach;
  • 写回答

2条回答 默认 最新

  • dtqi87613 2009-06-07 19:07
    关注

    I have figured out where i was going wrong! This:

    $postslist = get_posts($cat->cat_ID, 'numberposts=1&order=DESC');
    

    Has been replaced with:

    $postslist = get_posts('category='.$cat->cat_ID.'numberposts=1&order=DESC');
    

    This gives the actual category id.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?