Có một số vấn đề trong truy vấn của bạn.
Không có tham số được đặt tên category. Bạn có thể sử dụng những điều sau đây.
cat (int) - use category id.
category_name (string) - use category slug (NOT name).
category__and (array) - use category id.
category__in (array) - use category id.
category__not_in (array) - use category id.
Nếu bạn cần truy vấn của bạn để phân trang thì bạn không nên sử dụng posts_per_page' => -1. Điều này sẽ ghi đè phân trang và trả lại tất cả các bài viết.
Một điều nữa, bạn đang kiểm tra hình thu nhỏ của bài đăng ở vị trí sai. Bạn nên kiểm tra nó trước khi chứa hình ảnh.
Vì vậy, tôi đã sửa đổi truy vấn của bạn và đây là cách nó sẽ được. Tôi giả sử sên danh mục của bạn currentgiống như bạn đã sử dụng trong truy vấn của mình.
<?php
$loop = new WP_Query( array( 'post_type' => 'property', 'category_name' => 'current', 'ignore_sticky_posts' => 1, 'paged' => $paged ) );
if ( $loop->have_posts() ) :
while ( $loop->have_posts() ) : $loop->the_post(); ?>
<div class="pindex">
<?php if ( has_post_thumbnail() ) { ?>
<div class="pimage">
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail(); ?></a>
</div>
<?php } ?>
<div class="ptitle">
<h2><?php echo get_the_title(); ?></h2>
</div>
</div>
<?php endwhile;
if ( $loop->max_num_pages > 1 ) : ?>
<div id="nav-below" class="navigation">
<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">←</span> Previous', 'domain' ) ); ?></div>
<div class="nav-next"><?php previous_posts_link( __( 'Next <span class="meta-nav">→</span>', 'domain' ) ); ?></div>
</div>
<?php endif;
endif;
wp_reset_postdata();
?>
Điều này sẽ trả về tất cả các bài viết trong thể loại currentvới phân trang. Nếu bạn cần nhận bài viết từ nhiều danh mục thì bạn có thể sử dụng category__intham số thay vì category_name.
'category__in' => array( 2, 6 )
Lưu ý rằng category__inchỉ tích lũy ID danh mục.