删除上传到帖子的精选图像和所有媒体

时间:2019-04-10 作者:Mohsin Alam

我找到了一个解决方案,可以在从中删除帖子时删除与帖子相关的特色图片this article 但是,我想删除所有上传的媒体也与后删除。删除附加到帖子的所有WP图像库(包括生成的缩略图)。我该怎么做?

1 个回复
最合适的回答,由SO网友:djboris 整理而成

您可以尝试使用该函数get_attached_media() 像这样:

add_action( \'before_delete_post\', \'wps_remove_attachment_with_post\', 10 );
function wps_remove_attachment_with_post( $post_id ) {

    /** @var WP_Post[] $images */
    $images = get_attached_media( \'image\', $post_id );

    foreach ( $images as $image ) {
        wp_delete_attachment( $image->ID, true );
    }
}

Note that this will permanently delete all the image files related to this post. If those attachments are used somewhere else as well, those links will be broken.

相关推荐

Fix hover images blink

我使用php生成了这个css脚本,它用于在用户悬停时显示wordpress的第二个特色图像。问题是图像在闪烁,我不知道如何解决这个小问题。有人能建议解决这个问题吗?我已经实现了lazyload,但在这种情况下它是无用的。<div class=\"box\"> <?php $id = get_the_ID(); ?> <div class=\"rounded-circle\" style=\"background-image:url(\'