tôi cố gắng chạy một truy vấn loại bài đăng tùy chỉnh để phù hợp với các tiêu chí sau:
sắp xếp phim theo năm theo thứ tự giảm dần,
sau đó ("bên trong" thứ tự năm) theo tiêu đề theo thứ tự bảng chữ cái.
đầu ra mong muốn:
phim tựa đề Một năm 2006
bộ phim tiêu đề Z 2006
...
phim tựa đề Một, 1996
phim tiêu đề Z, 1996
tôi sử dụng đoạn mã sau:
$wp_query = new WP_Query();
$wp_query->query( array(
'post_type' => 'movies',
'distribution' => 'companyA',
'meta_key' => 'year',
'orderby' => 'meta_value_num title',
'order' => 'DESC',
'posts_per_page' => -1,
'post_status' => 'publish',
));
tôi đã thử một vài thứ nhưng tôi chỉ có thể nhận được kết quả "nghịch đảo" này:
tựa phim A, 1996
tựa phim Z, 1996
...
tựa phim A,
tựa phim Z, 2006
nếu tôi thay đổi DESC, ASC thì nó chỉ thay đổi cách sắp xếp tiêu đề. nhưng tôi cần phải áp dụng nó cho năm nay và không cho tiêu đề.
đó có phải là cách đúng để sử dụng hai giá trị thứ tự? hoặc tôi phải sử dụng meta_query hoặc SQL tùy chỉnh?
thx trước!
Đây là truy vấn SQL kết quả từ $GLOBALS['wp_query']->request
CHỌN wp_posts. *
TỪ wp_posts
INNER JOIN wp_term_relationships
ON (wp_posts.id = wp_term_relationships.object_id)
INNER JOIN wp_postmeta
ON (wp_posts.id = wp_postmeta.post_id)
WHERE 1 = 1
AND (wp_term_relationships.term_taxonomy_id IN (24))
VÀ wp_posts.post_type = 'phim'
VÀ (wp_posts.post_status = 'xuất bản')
VÀ (wp_postmeta.meta_key = 'năm')
NHÓM THEO wp_posts.id
ĐẶT HÀNG THEO wp_postmeta.meta_value + 0,
wp_posts.post