2016-11-16 92 views
0

我想通过标记ID使自定义类型的帖子循环。
这是原来的代码:WordPress的自定义帖子类型通过标记ID循环

<?php $args = array(
 
      'post_type' => 'kana_portfolio', 
 
      'meta_key' => 'choose_layout_2', 
 
      'meta_value' => 'layout-1', 
 
      'posts_per_page' => -1 
 
     ); 
 
     $posts = get_posts($args); 
 
     $term_array = array(); 
 
     $portfolio_term_array = array(); 
 
     foreach ($posts as $post) : setup_postdata($post); 
 
      $terms = wp_get_post_terms(get_the_ID(), 'kana_genre'); 
 
      foreach($terms as $term){ 
 
       $term_array[$term->slug] = $term->name; 
 
       $portfolio_term_array[] = $term->slug; 
 
      } 
 
     endforeach; 
 
     wp_reset_postdata(); ?>

由于我需要循环只柱中某一类(自定义信息类型的)具有ID 31我添加“‘TAG_ID’=> 31" 后 “ 'posts_per_page'=> -1”

<?php $args = array(
 
      'post_type' => 'kana_portfolio', 
 
      'meta_key' => 'choose_layout_2', 
 
      'meta_value' => 'layout-1', 
 
      'posts_per_page' => -1, 
 
      'tag_id' => 31 
 
     ); 
 
     $posts = get_posts($args); 
 
     $term_array = array(); 
 
     $portfolio_term_array = array(); 
 
     foreach ($posts as $post) : setup_postdata($post); 
 
      $terms = wp_get_post_terms(get_the_ID(), 'kana_genre'); 
 
      foreach($terms as $term){ 
 
       $term_array[$term->slug] = $term->name; 
 
       $portfolio_term_array[] = $term->slug; 
 
      } 
 
     endforeach; 
 
     wp_reset_postdata(); ?>

[编辑]
我具有低于在页面另一个循环,我试图插入 '猫'=> 31 tax_query阵列

   <?php $number_posts_to_display = get_field('number_of_posts_to_display'); 
 
       $display_order = get_field('post_display_order'); 
 
       $portfolio = array(
 
        'post_type' => 'kana_portfolio', 
 
        'posts_per_page' => $number_posts_to_display, 
 
        'order' => $display_order, 
 
        'meta_key' => 'choose_layout_2', 
 
        'meta_value' => 'layout-1', 
 
        'tax_query' => array(
 
         array(
 
          'taxonomy' => 'kana_genre', 
 
          'field' => 'slug', 
 
          'terms' => $portfolio_term_array, 
 
         ), 
 
        ), 
 
       ); 
 
       $portfolio_loop = new WP_Query($portfolio); ?>

但没有什么是表明,如何能我做?

回答

0

如果您的类别(我们在这里说的是真正的类别,分类类型类别...)是31,您应该使用'cat'=> 31,标签是标签,它们不是类别..如果这有帮助, 让我知道。如果您尝试过滤标签并且无法正常工作,请让我知道,并深入研究一下。

玩得开心!

+0

谢谢您的回复,我在 “猫”,但仍然没有工作变 “身份证”。 – CreativiBiz

0

相反的:

'tag_id' => 31 

试试这个:

'tag__in' => 31 
相关问题