Trần VươngDesign

Function xoá tất cả các file ảnh không dùng trong thư viện wordpress

Anh em copy này vào function.php lưu lại là xong nha!

function delete_unused_images() {
// Lấy tất cả ID của các bài viết và trang
$posts = get_posts(array(
'numberposts' => -1,
'post_type' => 'any',
'fields' => 'ids',
));

// Tạo một mảng chứa tất cả ID hình ảnh được sử dụng
$used_image_ids = array();
foreach ($posts as $post_id) {
$attached_images = get_attached_media('image', $post_id);
foreach ($attached_images as $image) {
$used_image_ids[] = $image->ID;
}
}

// Lấy tất cả hình ảnh trong thư viện
$all_images = get_posts(array(
'post_type' => 'attachment',
'posts_per_page' => -1,
'post_mime_type' => 'image',
'post_status' => 'inherit',
));

foreach ($all_images as $image) {
// Nếu hình ảnh không được sử dụng trong bất kỳ bài viết nào, xóa nó
if (!in_array($image->ID, $used_image_ids)) {
wp_delete_attachment($image->ID, true);
}
}
}|

// Gọi hàm (có thể gọi trong admin hoặc hook vào một action cụ thể)
<span style="color: #ff0000;"><strong>delete_unused_images();</strong></span>

Và sau khi F5 lại cho function chạy xong thì mình tắt dòng màu đỏ kia đi khi nào cần bật lại nha .

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest

0 Góp ý
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất
Phản hồi nội tuyến
Xem tất cả bình luận
0
Rất thích suy nghĩ của bạn, hãy bình luận.x