How can I bulk delete media and attachments using WP-CLI?

I’m trying to mass delete 4000 images in a wordpress website. WP itself sets the max to 999, which would work fine and take a few minutes to delete them via the backend. However, I get REQUEST URI TOO LARGE because the backend form uses GET instead of POST.

How can I use WP-CLI to perform the operation if it’s possible and ensure the integrity of the WP database. In other words, I don’t want to run an SQL command.

1
1

From the WP-CLI documentation about wp post delete:

wp post delete --force $(wp post list --post_type="attachment" --format=ids)

See wp post list for additional information.

Leave a Comment