Nhiều bạn có đặt câu hỏi cho đội ngũ Win Win Media là muốn khi Xóa Bài Viết Tự Động Xóa Luôn Ảnh Đính Kèm Trong WordPress thì phải làm như thế nào, hay có đoạn code, Plugin nào giải quyết được vấn đề này không ? thì hôm nây Win Win Media sẽ giới thiệu cùng các bạn vô cùng hữu ích khi sử dụng Plugin này.
Tại sao cần xóa ảnh đính kèm với bài viết khi xóa bài
Trong nhiều trường hợp khi bạn muốn xóa bài viết đi, khi xóa bài biết nếu không xóa ảnh thì dung lượng hosting ngày càng tăng làm giảm tốc độ của web, mà ảnh là thành phần chiếm dung lượng nhiều nhất hiện nay.
Chiếm dung lượng Hosting dư thừa dữ liệu
Plugin DX Delete Attached Media
Mình đã tự code và dùng khá nhiều các loại Plugin để giải quyết bài toán này nhưng sau một thời gian mình thấy Plugn DX Delete Attached Media hiệu quả hơn cả.
DX Delete Attached Media có nhiều lượt tải hơn so với Delete Post with Attachments
DX Delete Attached Media sẽ không hỗ trợ check ảnh sử dụng nơi khác hay không mà xóa luôn ảnh đính kèm vào bài viết.
Có thể nhiều người chưa biết đến Delete Post with Attachments hay chăng?
Plugin Delete Post with Attachments
Đây là một plugin vô cùng thông minh sẽ giúp bạn xóa các hình ảnh được chèn vào bài viết, Delete Post with Attachments giải quyết được 2 câu hỏi được nên ra ở đầu bài là khi bạn xóa bài đăng thì ảnh đính kèm (Attached Media) vào bài viết sẽ được xóa đi, tuy nhiên trước khi xóa plugin sẽ check xem hình ảnh đấy có được sử dụng ở một nơi nào khác hay không thì mới xóa
Trên đây là mình giới thiệu cùng các bạn 2 Plugin vô cùng hữu ích giúp bạn giải quyết được bài toán trên
Code xóa bài viết xóa luôn hình ảnh đính kèm
Còn nến bạn là người yêu thích code chúng tôi gọi ý đoạn code sau để bạn tham khảo.
Cách sử dụng bộ lọc xóa bài viết xóa luôn hình ảnh đính kèm
Bạn chỉ cần sao chép đoạn code bên dưới, sau đó dán vào file function.php trong thư mục theme mà bạn đang sử dụng là xong.
// Xóa bài viết sẽ xóa luôn hình ảnh đính kèm
add_action( ‘before_delete_post’, ‘delete_all_attached_media’ );
function delete_all_attached_media( $post_id ) {
if( get_post_type($post_id) == “post” ) {
$attachments = get_attached_media( ”, $post_id );
foreach ($attachments as $attachment) {
wp_delete_attachment( $attachment->ID, ‘true’ );
}
}
}
Chúc bạn thành công !