Trong bài này, mình sẽ chia sẻ cho các bạn cách làm thế nào để có thể tạo ra được một template Custom Single Post cho từng bài viết, cho từng tác giả hay cho từng category riêng biệt trong WordPress. Để có thể nắm được những hướng dẫn trong bài, yêu cầu bạn phải có các kiến thức cơ bản về HTML – CSS và hiểu về cách thức làm việc của theme WordPress.
Template Custom Single Post cho các bài viết khác nhau
<?php/*Single Post Template: [Mô tả tên template]Mô tả: Phần này không bắt buộc nhưng giúp ích cho việc mô tả Post Template*/?>
Sau khi tạo xong template custom cho single post, bạn lưu template đó vào các file theme khác trong thư mục theme của bạn. Để xem plugin đã được kích hoạt hay chưa, bạn vào bảng quản trị WordPress thử viết một bài mới sẽ thấy một drop-down box cung cấp cho bạn các tùy chọn để bạn lựa chọn template mà bạn muốn cho bài viết.
Template Custom Single Post cho từng Category riêng biệt
// Định nghĩa đường dẫn mặc định cho folder template singledefine(SINGLE_PATH, TEMPLATEPATH . '/single'); // Lọc single_template bằng custom functionadd_filter('single_template', 'my_single_template'); // Function template single chọn templatefunction my_single_template($single){ global $wp_query, $post; // Kiểm tra template single theo category // Kiểm tra category slug và ID foreach((array)get_the_category() as $cat) : if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->slug . '.php')) return SINGLE_PATH . '/single-cat-' . $cat->slug . '.php'; else if(file_exists(SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php')) return SINGLE_PATH . '/single-cat-' . $cat->term_id . '.php'; endforeach;}
Template Custom Single Post cho từng tác giả riêng biệt
// Định nghĩa đường dẫn mặc định cho folder template singledefine(SINGLE_PATH, TEMPLATEPATH . '/single'); // Lọc single_template bằng custom functionadd_filter('single_template', 'my_single_template'); // Function template single chọn templatefunction my_single_template($single){ global $wp_query, $post; // Kiểm tra template single theo tác giả // Kiểm tra user nicename và ID $curauth = get_userdata($wp_query->post->post_author); if(file_exists(SINGLE_PATH . '/single-author-' . $curauth->user_nicename . '.php')) return SINGLE_PATH . '/single-author-' . $curauth->user_nicename . '.php'; else if(file_exists(SINGLE_PATH . '/single-author-' . $curauth->ID . '.php')) return SINGLE_PATH . '/single-author-' . $curauth->ID . '.php';}
Mình không thể chỉ rõ cho bạn từng cách tạo template Custom Single Post bởi vì việc này tùy thuộc vào bạn và những gì mà bạn muốn thực hiện. Lưu ý quan trọng là bạn phải lưu tất cả các template custom trong folder name/single và folder này phải được đặt trong thư mục theme của bạn. Chúc bạn thành công.