2017-02-22 20 views
0

このクエリには、「特集」カテゴリまたはID 20というカテゴリを持つカスタム投稿タイプのすべての投稿を含める必要があります。これは、カテゴリまたはアーカイブテンプレートではなく、静的なフロントページで機能するようにしようとしています。カスタム投稿タイプとカテゴリの投稿のリストをクエリするにはどうすればよいですか?

カスタムポストタイプは取得できますが、カテゴリは取得できません。

global $post; 
$args = array( 
    'posts_per_page' => 12, 
    'offset'=> 1, 
    'post_type' => 'project', // name of custom post type. 
    //'category' => 20, // if adding ID of category, no posts are returned. 
); 

$lastposts = get_posts($args); 
foreach ($lastposts as $post) : 
    setup_postdata($post); 
    echo the_title(); 
endforeach; 
wp_reset_postdata(); 

UPDATE:リクエストに応じて、カスタム投稿タイプ「プロジェクト」のregister_post_type()があります。

$args = array(
    'labels'    => $labels, 
    'public'    => true, 
    'publicly_queryable' => true, 
    'show_ui'   => true, 
    'can_export'   => true, 
    'show_in_nav_menus' => true, 
    'query_var'   => true, 
    'has_archive'  => true, 
    'rewrite'   => apply_filters('et_project_posttype_rewrite_args', array(
     'feeds'  => true, 
     'slug'  => 'project', 
     'with_front' => false, 
    )), 
    'capability_type' => 'post', 
    'hierarchical'  => false, 
    'menu_position'  => null, 
    'supports'   => array('title', 'author', 'editor', 'thumbnail', 'excerpt', 'comments', 'revisions', 'custom-fields'), 
); 

register_post_type('project', apply_filters('et_project_posttype_args', $args)); 

答えて

0
$args = array(
    'post_type' => 'project', 
    'posts_per_page' => 12, 
    'tax_query' => array(
     'relation' => 'AND', 
     array(
      'taxonomy' => 'category', 
      'field' => 'term_id', 
      'terms' => array(20) 
     ), 
    ), 
); 
$query_post = new WP_Query($args); 
if ($query_post->have_posts()) { 
.... 
} 
wp_reset_query(); 
+0

これは、それがうまくいくように思える...しかし、何も返していません。 if文: '$ query_post - > have_posts()'はfalseを返します。 – paris

+0

登録ポストタイプを表示 – Kasia

+0

カスタムポストタイプ "project"のregister_post_type()関数を使用して質問を更新しました – paris

関連する問題