Code xóa ảnh khi xóa bài viết và sản phẩm trên WordPress

Xin chào các bạn, hôm nay mình sẽ chia sẻ tới các bạn đoạn code xóa ảnh khi xóa bài viết và sản phẩm trên WordPress.

Tại sao lại cần đoạn code này ?

Chắc hẳn khi quản trị và vận hành website WordPress, các bạn sẽ phải xóa đi các bài viết cà các sản phẩm không cần thiết trên website.

Tuy nhiên khi xóa bài viết và sản phẩm thì không thể xóa luôn đc cả các hình ảnh đi kèm trong bài viết và sản phẩm đó. Thay vì phải sử dụng thêm các plugin cài vào web thì chỉ với đoạn code ngắn này bạn có thể thực hiện công việc đó một cách dễ dàng.

Với website ít bài viết hay sản phẩm , bạn có thể thực hiện thủ công là xóa bài viết và sản phẩm . Sau đó vào mục media check và xóa các hình ảnh trong bài viết và sản phẩm đó. Tuy vậy cũng rất cồng kềnh.

Chưa kể đến khi website bạn có nhiều sản phẩm hay bài viết thì việc thực hiện thủ công như vậy là bất khả thi , và bạn phải cài plugin vào web để scan và xóa nhưng cũng sẽ không đc chuẩn.

Code xóa ảnh khi xóa bài viết và sản phẩm trên WordPress

Vậy phải code như thế nào ?

Rất đơn giản. Bạn chỉ cần coppy đoạn code dưới đây bỏ vào file function.php của theme mà bạn đang sử dụng là được.

/*Xóa ảnh khi xóa sản phẩm*/
function delete_all_attached_media( $post_id ) {
if ( get_post_type($post_id) == "product" ) {
$attachments = get_attached_media( '', $post_id );
foreach ($attachments as $attachment) {
wp_delete_attachment( $attachment->ID, 'true' );
}
}
}
add_action( 'before_delete_post', 'delete_all_attached_media' );

Chức năng của đoạn code này nó sẽ lấy toàn bộ các file đính kèm với $post_id được chỉ định, sau đó nó sẽ lấy id các file đính kém đó và xóa bằng hàm wp_delete_attachment. Sau đó sẽ hook vào vị trí trước khi thực hiện xóa post.

Lời kết

Như vậy là mình đã giới thiệu tới các bạn đoạn code xóa ảnh khi xóa bài viết và sản phẩm trên WordPress. Hi vọng sẽ giúp ích được cho các bạn trong quá trình quản trị và vận hành website.

Trong quá trình thực hiện nếu có gì thắc mắc, bạn có thể liên hệ với mình tại đây.

Chúc các bạn thành công