Yêu cầu Featured Image trước khi Publish bài viết mới

fetch-featured-imageĐể hiển thị Thumbnail cho bài viết ở ngoài trang chủ, trước khi chúng ta cần phải cập nhật Featured Image cho bài viết đó. Bạn cũng có thể có hoặc không cho Featured Image cho bài viết nếu như không quan tâm đếu điều này.

Một vấn đề đặt ra là nếu như Theme WordPress của bạn bắt buộc phải có Thumbnail để hiển thị rỏ ràng hơn ở trang hiển thị bài viết thì chúng ta cần phải cập nhật Featured Image. Bạn cần chắc chắn thực hiện việc này trước khi đăng bài viết mình, thì hãy xem hướng dẫn ở bài viết này.

Để “bắt buộc” Featured Image mới cho Publish bài viết thì bạn chỉ cần chèn đoạn code sau vào cuối file functions.php của theme:

add_action('save_post', 'wpds_check_thumbnail');
 add_action('admin_notices', 'wpds_thumbnail_error');
 function wpds_check_thumbnail($post_id) {
 // Thay đổi cho bất kỳ custom post type nào
 if(get_post_type($post_id) != 'post')
 return;
 if ( !has_post_thumbnail( $post_id ) ) {
 // Thiết lập để hiển thị thông báo cho bạn
 set_transient( "has_post_thumbnail", "no" );
 // Vòng lặp loop
 remove_action('save_post', 'wpds_check_thumbnail');
 // thêm vào trình soạn thảo của wordpress
 wp_update_post(array('ID' => $post_id, 'post_status' => 'draft'));
 add_action('save_post', 'wpds_check_thumbnail');
 } else {
 delete_transient( "has_post_thumbnail" );
 }
 }
 function wpds_thumbnail_error()
 {
 // Kiểm tra xem Featured Image đã được thiết lập, nếu không thì báo lỗi
 if ( get_transient( "has_post_thumbnail" ) == "no" ) {
 echo "<div id='message' class='error'><p><strong>You must select Featured Image. Your Post saved but will not be published.</strong></p></div>";
 delete_transient( "has_post_thumbnail" );
 }
 }

Save file functions.php lại và bạn vào thử đăng bài viết mới mà không chọn Featured Image thì nó sẽ có dòng thông báo “You must select Featured Image. Your Post saved but will not be published.” cho bạn.

Đơn giản vậy thôi, chúc các bạn thành công!

Đánh giá

Hãy bình luận, góp ý bằng Disqus để được hồi đáp nhanh hơn!
Sử dụng Facebook hoặc Google nếu không load được Disqus

Nhận nhiều thông tin bổ ích và quà tặng hấp dẫn
từ MELYWEB

Theo dõi blog MELYWEB để nhận được các tin tức bổ ích, khuyến mãi mới nhất, các quà tặng hấp dẫn.