我正在尝试按自定义字段对循环进行排序,但它不能正常工作。 就像我有数据1200,1300,1400,1500,12500,13500通常它应该这样排序但现在我看到像1200,12500,1300,13500,1400,1500。请看我的代码,让我知道我在哪里我错了。
代码:
<?php
$args = array(
'post_status' => 'publish',
'post_type' => 'car',
'car_type' => 'suv',
'meta_key' => 'per_month_rent',
'orderby' => 'meta_value',
'order' => 'ASC',
'posts_per_page' => -1
// Several more arguments could go here. Last one without a comma.
);
?>
<div style="display: block;clear: both;">
<?php
// Query the posts:
$obituary_query = new WP_Query($args);
// Loop through the obituaries:
while ($obituary_query->have_posts()) : $obituary_query->the_post();
// Echo some markup
$image = wp_get_attachment_image_src(get_field('image'), 'best-seller-size');
$type=get_field('car_type');
$company=get_field('company_name');
include 'featured_list.php';
endwhile;
// Reset Post Data
wp_reset_postdata();
?>
</div>
提前致谢。
答案 0 :(得分:0)
这是因为您将数字值排序为 string 。
从以下地址更改您的订单:
'orderby' => 'meta_value'
要:
'orderby' => 'meta_value_num' # Observe _num