I can’t be the only person who’s accidentally hit “Empty Trash” or “Delete Permanently” on WordPress posts, only to grok soon afterwards that I’d be spending the next hour or two rewriting them – in fact, something happened recently to a client of mine, involving emptying the trash and an entire day’s work, that made me think “Geez, I wish I could undelete stuff.”
I worked late into the night, on that gotta finish this damn thing i started hyper-frenzy code-smash mode that fellow developers will know so well, and by the next morning, I had the first version of WP Undelete: Restore Deleted Posts ready to submit to the WordPress.org plugin repository.
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) complex UI to get to grips with, and it doesn’t need 300 options just to run – one of the key features, for me, is its lack of an options page – all it uses is default WordPress display and query functions for a fast and native experience.

Features:
- Restore deleted posts, even after hitting ‘Empty Trash’ or ‘Delete Permanently’, one by one or in bulk.
- Permanently erase the backed up deleted posts manually, or automatically after 28 days.
- Standard, native posts-style interface, no heavy UI or JS required – no complex plugin options page
- Operates silently in the background – won’t slow your site down one bit, nor make the database heavy.
- 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.
Please try it out and report any bugs! Click below to view the launch page and download links, leave comments, etc.: