Chúng ta thường liệt kê các bài viết trong một category, trong thiết kế trang category template của wordpress. Ở phần đầu bạn sẽ cho hiển thị tên danh mục để cho người dùng biết các bài viết chứa trong danh mục hay tag nào.
Một số wordpress theme mẫu như twentytwelve, twentythirteen, twentyfourteen có đoạn hiển thị thông tin category/tag trong template
category.php và tag.php bạn có thể tham khảo và sao chép code tại file đó.Lấy dữ liệu category hiện tại
Category hiện tại được xác định thông qua tham số URL, để lấy giá trị của một tham số có trên URL, tuy nhiên nếu bạn thiết lập permalink dạng viết lại đường dẫn thì những tham số này bị ẩn đi sẽ không hiển thị ra tham số. Nhưng bạn cũng có thể lấy nó bằng cách sử dụng hàm
get_query_var(), nếu đang ở trang category bạn có thể lấy category ID hiện tại thông qua tham số cat
1
2
| $category=get_category(get_query_var('cat'));print_r($category); |
Hàm
get_category trả về đối tượng chứa thông tin của category.
1
| stdClass Object ( [term_id] => 6 [name] => Metu [slug] => metu [term_group] => 0 [term_taxonomy_id] => 6 [taxonomy] => category [description] => hfghhfhfghffghfghfh [parent] => 0 [count] => 0 [filter] => raw [cat_ID] => 6 [category_count] => 0 [category_description] => hfghhfhfghffghfghfh [cat_name] => Metu [category_nicename] => metu [category_parent] => 0 ) |
Ngoài ra, bạn có thể sử dụng hàm
get_queried_object(), hàm này trả về mọi thông tin tham số có trên URL. Bạn không biết tên các tham số ở trên URL, hãy sử dụng hàm này thay vì sử dụng nhiều lần hàm get_query_var cho nhiều tham số.
1
2
| $obj=get_queried_object();var_dump($obj->category_description); |
Giá trị của hàm phụ thuộc vào từng template mà trả về khác nhau.
- nếu là single post thì trả về dữ liệu post.
- nếu là page, thì trả về dữ liệu page.
- nếu là category archive, thì trả về dữ liệu category.
- nếu là author archive, thì trả về dữ liệu của author.
Hàm
get_queried_object tiền thân là hàm thành viên của đối tượng WP_Query. Bạn cũng có thể lấy dữ liệu tham số được tạo bởi đối tượng lớp WP_Query.
1
| $wp_query->get_queried_object(); |
Tag Template
Ngoài cách sử dụng hàm trên, trong tag template tag.php còn có hàm riêng giúp bạn lấy tên tag.
1
| echo single_tag_title( '', false ); |
Cú pháp: single_tag_title( $prefix, $display );
Lấy Mô tả của tag hiện tại.
1
2
3
| <?php if ( tag_description() ) : // Show an optional tag description ?> <div class="archive-meta"><?php echo tag_description(); ?></div><?php endif; ?> |
02:35
Unknown
0 nhận xét :
Đăng nhận xét