按高级自定义字段排序

时间:2017-10-19 13:56:28

标签: php wordpress advanced-custom-fields

我尝试使用高级自定义字段packages对自定义帖子类型package_order_id进行排序:

enter image description here

<?php
global $wp_query;
query_posts(array(
    'post_type' => 'packages',
    'meta_key' => 'package_order_id',
    'orderby' => 'meta_value_num',
    'order' => 'DESC'
));    
while(have_posts()) : the_post(); 
?>

我在寻找其他答案后得到了这个结果,但仍然无法让它发挥作用。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我根本不会使用global $wp_query;,但会使用WP Query通过新查询运行参数。

<?php 
$posts = get_posts(array(
    'post_type' => 'packages',
    'meta_key'  => 'package_order_id',
    'orderby'   => 'meta_value_num',
    'order'     => 'DESC'
));   
// loop
if( $posts ) {  
    foreach( $posts as $post ) {        
        setup_postdata( $post );

        // do something   
    }   
    wp_reset_postdata();        
}  
?>