Après une mise à la corbeille et suppression définitive d’un article dans WordPress, les images liées à cet article se retrouvent dans la bibliothèque des media avec le statut « Non attaché ». Il est parfois fastidieux de cocher ensuite, une à une, chacune des images devenue inutile pour la supprimer de la bibliothèque, d’autant que la variété des titres et le nombre d’éléments empêche souvent une filtration efficace par mot-clé.

Comment supprimer les images d’un article WordPress en même temps que celui-ci

C’est dans une petite fonction à insérer dans le fichier functions.php de votre thème préféré que vous trouverez votre salut:

function delete_post_children($post_id) {
    global $wpdb;

    $ids = $wpdb->get_col(« SELECT ID FROM {$wpdb->posts} WHERE post_parent = $post_id AND post_type = ‘attachment’ »);

    foreach ( $ids as $id )
        wp_delete_attachment($id);
}
add_action(‘delete_post’, ‘delete_post_children’);

Source: Removing unused images…

Modifié le