Undelete for WordPress adds the ability to restore deleted posts, even after emptying the trash or ‘permanently deleting’ them.
I’m not the only person who’s accidentally hit “Delete Permanently” or “Empty Trash” on posts, only to realise I’d spend the next half hour rewriting them - something happened to a client recently that made me think “Geez, I wish I could undelete stuff.”
→ Skip to: Download • Features • Screenshot
Backup insurance for deleted posts:
WP Undelete is like a backup utility for the stuff you delete. It operates silently in the background, without any input from you, and you won’t even know it’s there – until you need it. The plugin’s backend admin panel (which you’ll find in the Tools menu) contains a list of deleted items, with the option to either undelete or permanently erase them, one by one or in bulk.
There’s no fancy (read:buggy/annoying) user interface, and it doesn’t need 1,000 options just to run – all it uses is default WordPress display and query functions for a fast and native experience.
It’s lightweight, simple and won’t slow your site down in any way – but might save you a ton of time somewhere down the line.
Feature list and download below the screenshot.

WP Undelete Features:
- Restore deleted posts, even after hitting ‘Empty Trash’ or ‘Delete Permanently’, one by one or in bulk.
- Erase the backed up deleted posts by hand, or automatically after 28 days.
- Native WP Posts-style interface, no heavy UI required, no options page (yes, that’s a feature.)
- Operates silently in the background – doesn’t slow your site at all, or bloat the database.
- Planned for next release: ability to undelete custom post types and pages
- Planned for next release: save postmeta, tag/category associations and comments on restored posts
NB: this plugin is a first-release version with many features ‘missing’ or not implemented yet… for now, it will allow you to restore only posts (custom post types/pages support coming in next release!) – and comments of deleted posts, as well as postmeta and tags/category associations, are lost (again, this will be a feature of the next version!)
Please try it out, report any bugs that pop up, and watch out for the next release (0.1) which will add all the features you’d expect from a plugin like this.
→ Download WP Undelete
Thanks for reading – if you enjoy the plugin, do the right thing and give it a 5 star ★★★★★ rating on wp.org!
PS. the code is on github, along with some of my other projects.

Very cool of you to create this.
It’s not getting my lost stuff back, but that’s because it was more than 28 days ago, but I’m keeping it running for the next time it happens – thanks!
Comes up with fatal error.
Could you give version / setup info? Cheers.
Same thing – fatal error.
Here is what I get:
Fatal error: Call to undefined method WP_List_Table::WP_List_Table() in /home/asilda/public_html/modernartconsulting.ru/wp-content/plugins/wp-undelete-restore-deleted-posts/admin/class-wp-undelete-list-table.php on line 80
Thanks. The plugin needs updating to work with the latest versions of WordPress, so hold off on trying to use it for now until I have some time to patch it.
ok great! thanks for the quick response
Hi, just today I permanently deleted some 20 posts on WordPress, since I’m using the version 2.9.1 I cannot use your pluggin. Do you have any other solutions how could I restore the posts? I’m not sure that I can update the version since the blog is from our client. Thanks in advance!
You could try logging into the MySQL database using PHPMyAdmin and checking out the ‘wp_posts’ database table, then in there, looking for some autosaves or revisions of those deleted posts? Other than that, I’m not too sure!
There are loads of guides on accessing the WP database if you search them on the google machine.
Same problem here with fatal error. A update would be awesome! Thanks and merry Christmas
Fatal error: Call to undefined method WP_List_Table::WP_List_Table() in /home/dynamicp/public_html/wp-content/plugins/wp-undelete-restore-deleted-posts/admin/class-wp-undelete-list-table.php on line 80
Call to undefined method WP_List_Table::WP_List_Table() in /home/lifeport/public_html/members/wp-content/plugins/wp-undelete-restore-deleted-posts/admin/class-wp-undelete-list-table.php on line 80
getting this error
Hi .. came looking for a way to undele link categories … guess I’ll keep looking.
But wanted to say, I love your ‘comment rules’. (Minor point / constructive feedback – shouldn’t they be the other way round, and shouldn’t a ‘new’ rule 2 say “there are no OTHER rules”?)
:-)
Haha, it’s actually a reference to a Simpsons episode:
(see tvtropes.org > ThereAreNoRules under ‘Western Animation’)
[comment removed; see Rule #2 above.]
Here’s my problem:
1. I can’t upgrade my theme because a stylesheet is missing it said.
Fixes I made: copied the theme folder using filezilla in the server. Did not solve the problem.
I recall deleting my default homepage before, I’m thinking this could be the lost stylesheet. (I’m a newbie and really, I don’t know what’s going on).
Maybe if I could restore the default homepage, I could get my stylesheet back.
Thank you.
Fatal error: Call to undefined method WP_List_Table::WP_List_Table() in /home/vittles8/public_html/wp-content/plugins/wp-undelete-restore-deleted-posts/admin/class-wp-undelete-list-table.php on line 80
Great plugin – by the sounds of it. I managed to download and install but when I go to use it it just seems to direct through to a blank white page, I am using WP version 3.5 and could really do with the power of this plugin. Can you offer any guidance to get it working?
Thanks
Tom