显示具有自定义帖子类型的帖子

时间:2012-12-24 08:16:48

标签: wordpress custom-post-type

我已经创建了一个自定义帖子类型,现在我希望显示没有自定义帖子类型的所有帖子。我已经显示了这样的自定义帖子

$args = array(
        'post_type' => 'badge',
    );
    // The query itself
    $sb_user_query = new WP_Query( $args );
    // The loop
    while ( $sb_user_query->have_posts() ) : $sb_user_query->the_post();
        $badge_id = $sb_user_query->post->ID;
        $badge_title = get_the_title();
        $author = get_the_author();
        $author_id = get_the_author_ID();
        $badge_image_small = get_the_post_thumbnail( $badge_id, array(16,16) );
        $post_data = get_post_meta( $badge_id, '_metabox', true );
        $comment_data = get_post_meta( $badge_id, '_comments', true );
        echo $author.$badge_image_small;
    endwhile;

现在我想显示没有"徽章的所有帖子类型"发布类型。我怎么能这样帮助我。

2 个答案:

答案 0 :(得分:0)

不知道你想要什么,你可以使用get_posts()来获取帖子

http://codex.wordpress.org/Template_Tags/get_posts

以下是解释何时使用get_posts(),query_posts(),WP_Query

的链接

https://wordpress.stackexchange.com/questions/1753/when-should-you-use-wp-query-vs-query-posts-vs-get-posts/1755#1755

答案 1 :(得分:0)

I think below code will give u the idea.

<?php
  $type = 'badge';
  $args=array(
  'post_type' => $type,
  'post_status' => 'publish',
  'posts_per_page' => -1,
  'caller_get_posts'=> 1

$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
  while ($my_query->have_posts()) : $my_query->the_post();
    global $post;
    $badge_id = $post->ID;
    $badge_title = get_the_title();
    $author = get_the_author();
    $author_id = get_the_author_ID();
    $badge_image_small = get_the_post_thumbnail( $badge_id, array(16,16) );
    $post_data = get_post_meta( $badge_id, '_metabox', true );
    $comment_data = get_post_meta( $badge_id, '_comments', true );
    echo $author.$badge_image_small;

endwhile;
}
wp_reset_query();  // Restore global post data stomped by the_post().
?>