您可以尝试使用该函数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.