Vòng lặp tùy chỉnh cho loại bài tùy chỉnh


8

Tôi đang sử dụng WP 4.0 và Headway làm chủ đề. Tôi đã tạo một loại bài đăng tùy chỉnh được gọi là 'property' và đang tìm cách tạo vòng lặp trong 2 cột. nhưng tôi không chắc phải thêm gì vào đoạn mã sau để thực hiện. Tôi cũng muốn thêm phân trang.

Tôi cũng có thông tin khác để đặt bên trong vòng lặp. chỉ làm việc để làm cho nó hoạt động đúng.

Đây là mã hiện đang làm việc cho tôi ... không có cột.

<?php $loop = new WP_Query( array( 'post_type' => 'property', 'posts_per_page' => -1, 'category' => 'current' ) ); ?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<div class="pindex">
    <div class="pimage">
        <a href="<?php the_permalink(); ?>"><?php if ( has_post_thumbnail() ) {the_post_thumbnail();} ?></a>
    </div>
    <div class="ptitle">
        <h2><?php echo get_the_title(); ?></h2>
    </div>
</div>
<?php endwhile; wp_reset_query(); ?>

1
Xin lỗi, nhưng bạn có thể vui lòng đọc Làm thế nào để hỏi và thêm s chỉnh sửa vào bài viết của bạn thay vì bình luận không? Hãy chắc chắn rằng bạn đọc trung tâm trợ giúp để tìm đường trên trang web. Ngoài ra còn có các nút WYSIWYG để người chỉnh sửa định dạng nội dung câu hỏi của bạn.
kaiser

Câu hỏi của bạn không có chủ đề vì nó liên quan đến việc sửa đổi một chủ đề thương mại. Tại sao bạn không thể hỏi câu hỏi này trên các diễn đàn chủ đề Headway?
Brad Dalton

Một chủ đề thương mại không thể truy cập công khai.
Brad Dalton

Câu trả lời:


11

Có một số vấn đề trong truy vấn của bạn.

  1. 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.
  2. 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.

  3. 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">&larr;</span> Previous', 'domain' ) ); ?></div>
                <div class="nav-next"><?php previous_posts_link( __( 'Next <span class="meta-nav">&rarr;</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.

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.