Hiển thị toàn bộ các bài viết có cùng taxonomy

Cập nhật lần cuối 17/03/2017 by trong WordPress vào 18/03/2014 có 1197 Views

Code này tuy ngắn ngọn nhưng rất hữu ích cho các bạn viết web với wordpress. Đoạn code sau giúp cho bạn hiển thị toàn bộ các bài viết cùng taxonomy.

Ví dụ như sau. Mình có post_type là sanpham và có taxonomy là mau_san_pham. Khi bạn muốn hiển thị các sản phẩm có cùng mầu đỏ thì bạn làm thế nào? đại loại là thế hi

Đoạn code này sẽ giúp bạn …


function list_posts_by_taxonomy( $post_type, $taxonomy, $get_terms_args = array(), $wp_query_args = array() ){
 $tax_terms = get_terms( $taxonomy, $get_terms_args );
 if( $tax_terms ){
 foreach( $tax_terms as $tax_term ){
 $query_args = array(
 'post_type' => $post_type,
 "$taxonomy" => $tax_term->slug,
 'post_status' => 'publish',
 'posts_per_page' => -1,
 'ignore_sticky_posts' => true
 );
 $query_args = wp_parse_args( $wp_query_args, $query_args );

$my_query = new WP_Query( $query_args );
 if( $my_query->have_posts() ) { ?>
 <h2 id="<?php echo $tax_term->slug; ?>" class="tax_term-heading"><?php echo $tax_term->name; ?></h2>
 <ul>
 <?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
 <li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
 <?php endwhile; ?>
 </ul>
 <?php
 }
 wp_reset_query();
 }
 }
}

Và chèn đoạn code sau vào nơi mà bạn muốn hiển thị

list_posts_by_taxonomy( 'my_post_type', 'my_post_type_taxonomy' );

Tham khảo tại: http://gilbert.pellegrom.me/wordpress-list-posts-by-taxonomy/

Hiển thị toàn bộ các bài viết có cùng taxonomy
5 (100%) 1 vote
Từ khóa: ,
  • Bình luận
Có thể bạn quan tâm
x