tax_query trong get_posts () không hoạt động?


7

Tôi đang cố gắng in ra tất cả các bài đăng trong mỗi phân loại cho một loại bài đăng tùy chỉnh được gọi là product(sản phẩm jigoshop). Vì vậy, tôi nhận được tất cả các nguyên tắc phân loại bằng cách sử dụng $cats = get_terms('product_cat');, sau đó tôi lặp qua tất cả chúng và nhận được tất cả các bài đăng trong phân loại. Vấn đề là, nó không hoạt động. Nó chỉ trả về trống!

$uposts = get_posts(array(
    'post_type' => 'product',
    'numberposts' => -1,
    'tax_query' => array(
        'taxonomy' => $cat->taxonomy,
        'field' => 'slug',
        'terms' => array($cat->slug),
        'operator' => 'IN'
    )
));

Nếu tôi thay đổi 'terms' => array($cat->slug)để 'terms' => $cat->slugnó trả về tất cả các bài viết, như thể nó bỏ qua tax_query hoàn toàn.

Bất kỳ ý tưởng những gì gây ra điều này thất bại? Tôi đã thử chơi xung quanh operator, đổi fieldthành ID (và cũng gửi $cat->IDdưới dạng thuật ngữ) ... không có gì hoạt động!

$ cat có các giá trị sau:

stdClass Object
(
    [term_id] => 114
    [name] => Ny testkategori
    [slug] => ny-testkategori
    [term_group] => 0
    [term_taxonomy_id] => 115
    [taxonomy] => product_cat
    [description] => 
    [parent] => 0
    [count] => 2
    [meta_id] => 3
    [jigoshop_term_id] => 114
    [meta_key] => order
    [meta_value] => 1
)

Vì vậy, $ cat-> sên và $ cat-> phân loại là các giá trị hợp lệ.

Câu trả lời:


16

tax_query lấy một mảng các mảng đối số truy vấn thuế (nó lấy một mảng các mảng) nhưng bạn chỉ sử dụng một mảng duy nhất. Mã chính xác như sau.

$uposts = get_posts(
    array(
        'post_type' => 'product',
        'numberposts' => -1,
        'tax_query' => array(
            array(
                'taxonomy' => $cat->taxonomy,
                'field' => 'slug',
                'terms' => array($cat->slug),
                'operator' => 'IN',
            )
         )
    )
);

Để biết thêm thông tin truy cập trang này .


2
Ồ dĩ nhiên rồi! Ngớ ngẩn với tôi, tôi đã dành hơn một giờ để cố gắng khắc phục điều này. Cảm ơn rất nhiều!
qwerty

may mắn cho bạn, tôi đã dành ba ngày cho nó :( Có bất cứ điều gì như một số phản hồi có bao nhiêu bài đăng được lấy ra hay đúng hơn TẠI SAO không tìm thấy? Rất nhiều tuts và ví dụ, ngay cả ở đây là về phiên bản cũ hơn hoặc không hoạt động với tôi dù sao đi nữa
piotao

URL tài liệu đã thay đổi. Tài liệu cho các tham số phân loại WP_Query hiện có tại đây: developer.wordpress.org/reference/groupes/wp_query/ chủ
Tomas Eklund
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.