
Tạo Post Format cho theme wordpress

Một tính năng hỗ trợ rất hay trên WordPress đó là cho phép người dùng lựa chọn định dạng cho loại post hiển thị. Chức năng này có tên là Post Format, và được WordPress hỗ trợ từ lâu. Trong bài viết này mình sẽ hướng dẫn cách cơ bản nhất để tạo ra Post Format cho theme của bạn.
Khai báo các loại post theme hỗ trợ
Không phải lúc nào theme cũng hỗ trợ hết tất cả loại post format mà WordPress cung cấp. hiện tại WP cung cấp 8 loại post format khác nhau bao gồm:đứng riêng (aside) hình ảnh, video, bộ sưu tập (gallery), trích dẫn (quote), liên kết (link), trang thái (status), chat, âm thanh (audio). để khai báo theme bạn có hỗ trợ bạn hãy mở file “functions.php” của theme và code đoạn sau vào.
function tuandc_post_formats_setup() {
add_theme_support( 'post-formats', array( 'aside','image','video','gallery','quote','link','status','chat','audio') );
}
add_action( 'after_setup_theme', 'tuandc_post_formats_setup' );

Tất cả định dạng bài viết (post format) hiện tại của WordPress
Bạn có thể loại bỏ đi một vài định dạng nếu theme của bạn không hỗ trợ hiển thị định dạng đó.
Tạo theme cho từng loại post
Khi đã có được Post format, bạn cần phải đưa ra theme thích hợp để hiển thị. Thông thường mỗi một loại post mình sẽ đưa ra một tệp file để hiển thị. Giả sử post hình ảnh mình sẽ cho hiển thị file “single-image.php”. Nhưng trước tiên bạn cần khai báo đoạn này vào file “single.php”.
<?php
if(has_post_format()) {
get_template_part( 'single', get_post_format() );
}
else{
get_template_part( 'single', 'none' );
}
?>
Trong đoạn code trên mình sẽ tạo thêm một file có tên single-none.php để hiển thị những bài viết không chọn post format.
Tương tự như vậy bạn có thể tạo thêm các file hiển thị khác như:
- single-aside.php
- single-video.php
- single-gallery.php
- single-link.php
- single-status.php
- single-chat.php
- single-audio.php
Bạn code thể code cho từng file hiển thị nội dung sao cho phù hợp. Chẳng hạn như file “single-video.php” bạn có thể cho hiển thị các video mà bạn đưa link vào các trường Custom Field,…
Mình nghĩ đây là một trong những tính năng rất tuyệt vời của WordPress mà bạn không nên bỏ qua khi tạo theme, nó sẽ làm phong phú giao diện nội dung của website bạn, và tạo ra một website có nhiều điều thú vị.
Chúc bạn thành công !
