Wordpress:通过met_key获取帖子时出错


Wordpress: Error in get post by met_key

我有这个代码,

    $type = get_the_ID();
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $units3 = new wp_query( array(  'post_type' => 'units' ,
                                    'posts_per_page'=> 6 ,
                                    'paged' => $paged  ,
                                    'meta_key' => 'unittype',
                                    'meta_value' => $type ) ); 
    while ($units3->have_posts()) : $units3->the_post(); 

它必须让我从unit获得所有帖子。那是在id = $type的单元类型中但问题是让我全部发帖。

它必须让我只从单位类型的岗位类型所有的岗位,在单位类型的职位类型,

错误在哪里

Meta键用于在顺序参数中使用Meta_value_num

您需要使用meta_query来查询特定的元数据

首先测试您的查询,直到您获得正确的数据

$data = query_posts( array(
                'post_type' => 'your_custom_post_type',
                'orderby' => 'meta_value_num',  
                'meta_key' => 'your_order_meta_key', 
                'posts_per_page'=> 5,
                'meta_query' => array(
                    array(
                        'key'     => 'key_to_only_display_if_exist',
                        'value'   => array( 3, 4 ),
                        'compare' => 'IN',
                        )
                    )
                ) 
            ); 
var_dump($data);

然后使用query_post

query_posts( array(
                'post_type' => 'your_custom_post_type',
                'orderby' => 'meta_value_num',  
                'meta_key' => 'your_order_meta_key', 
                'posts_per_page'=> 5,
                'meta_query' => array(
                    array(
                        'key'     => 'key_to_only_display_if_exist',
                        'value'   => array( 3, 4 ),
                        'compare' => 'IN',
                        )
                    )
                ) 
            ); 
      if (have_posts()) :
          while (have_posts()) : the_post();
              echo '<div class="post-entry">';
              echo '<h2><a href="'.get_the_permalink().'">' . get_the_title() . '</a></h2>';
              echo '<div class="entry-content">'. apply_filters('the_content',get_the_content('Read More')).'</div>';
              echo '</div>';
          endwhile;
      endif;
wp_reset_query();