a) 如果您已在uploaded to this post 在媒体浏览器中menu_order>0
你可以用
\'orderby\' => \'menu_order\',
\'order\' => \'asc\'
b) 如果你没有,那么
menu_order=0
对于所有这些图像,您需要使用
\'orderby\' => \'ID\',
\'order\' => \'asc\'
以获得相同的订单(或asc日期)。
在纯SQL中,这两种情况的解决方案可以是这样的:
... ORDER BY menu_order ASC, ID ASC
如果你尝试
\'orderby\' => \'menu_order ID\',
\'order\' => \'asc\'
你会得到
... ORDER BY menu_order, ID ASC
自
get_children()
正在使用
get_posts()
对于如何将额外字段添加到
orderby
和
order
参数。
您还可以使用自定义查询,完全控制双重排序:
$sql="SELECT {$wpdb->posts}.*
FROM {$wpdb->posts}
WHERE {$wpdb->posts}.post_parent = %d
AND ({$wpdb->posts}.post_mime_type LIKE \'image/%%\')
AND {$wpdb->posts}.post_type = \'attachment\'
AND ({$wpdb->posts}.post_status <> \'trash\' AND {$wpdb->posts}.post_status <> \'auto-draft\')
ORDER BY {$wpdb->posts}.menu_order ASC,{$wpdb->posts}.ID ASC";
$images=$wpdb->get_results($wpdb->prepare($sql,$post->ID));