Have you run a multi-user blog that gone out of control? I had an open blog that over the years accumulated thousands of, ahem, “poor quality” articles in “pending” status. Rather than delete them in batches in the admin, I figured an SQL command that can remove all of them in a few seconds. But before I give you that…
Back Up Your WordPress Database
This is something you should do anyway. You backup your database by logging into your website control panel (hopefully you use cpanel) and clicking the icon for phpMyAdmin. Select “Export” on the top navigation and select SQL format and download the file to your local machine. That file is your database backup.
SQL Command to Delete WordPress Pending Posts
Again, in phpMyAdmin, click “SQL” on the top navigation, and enter the following command and click “Go”. This will also delete pending pages!
DELETE FROM wp_posts WHERE post_status = "pending";
That’s it. Your pending posts and pages will all be deleted.