Behind most functioning sites we browse every day there are bound to be local, test sites where everything that works on the frontend is thoroughly tested on the backend. Anyone who was ever a part of these test sites can attest to the clutter of apps, editors, plugins and code that can lead to the site barely functioning.
Since nobody wants to see a site crash, even if it’s a test site, it’s prudent to do a system reset before it comes to that. WP reset is a free plugin that will take back your WordPress site to basically the factory settings and let you start anew from scratch.
Although, probably, the most common use for this type of plugin would be in the aforementioned test sites, it’s important to know that it can be implemented and used on any and all WordPress sites. That means that if it comes to it, everything WP reset has to offer is applicable on live sites.
What stays, what goes
Resetting a system, much like formatting a disk, is mostly and rightly considered a last resort. The reason for this is that data will be lost, there just aren’t two ways about it. You’ll need to back up everything that is important for you and still, chances are, something will go missing although you don’t want it to.
Because of this it’s very important to point out, before we move on to anything else, what data will still remain and what will be removed once you finally decide to push the reset button. Keep in mind that resetting your site is a permanent action and you won’t be able to take it back. That’s precisely why the plugin requires you to confirm the action two times before it’s actually done.
Almost all content that relates to the frontend will be deleted. This includes all post, pages, custom post types, comments, media entries and users. Deletion also extends to all default WP database tables, as well as all custom database tables that have the same “wp_” prefix. As you can plainly see this a pretty big chunk of what makes a site in the first place.
On the other hand, all media files will remain in the wp-uploads folder, however they won’t be listed under media. All external files you’ve integrated (plugins, themes uploads) all stay as they are. The same goes for the site title, WordPress address, site address, site language and search engine visibility settings.
It’s important to point out that the plugin has both WP-CLI and WP Webhooks support. Although these might not mean much to casual users, we believe the developers among you will be glad to know this.
The last step before fully committing is defining the post reset actions that will automatically occur once the deed is done. These are just some options regarding the way your site will boot up.
After the reset
The first thing after the reset has completed is the restoration of the “root” user with the current password. Since some data remains untouched (listed above) you’ll still have a decent base to work with for putting out new original content (since all your previous original content was removed). Based on your choices regarding post-reset actions the state of your plugins, that are vital for any development work, will either automatically activated, or you’ll have to activate them manually if you choose to do so. Either way, your blank slate is here for the taking.
If doing the “full reset” is too much for you, there is an option where you get to choose to reset only specific parts of your site. WP Reset lets you single out the following data:
- Transients – all transient data is deleted (includes expired, non-expired transients and orphaned transient timeout entries)
- Upload data – all uploaded files in the C:\folder\htdocs\wp\wp-content\uploads are deleted
- Theme options – deletes the options and mods for all themes, active and inactive
- Theme deletion – deletes all themes, leaving only the default WordPress theme available
- Plugins – all plugins except WP reset are deleted
- Custom tables – all custom tables with the wp_ prefix are deleted, but all core tables and those without the wp_ prefix remain (you can see an example of affected tables below)
- .htaccess file – deletes the .htaccess file located in C:/folder/htdocs/wp/.htaccess (if you edit the file often, we suggest using the free WP Htaccess Editor plugin)
Just like with the complete reset option, there are no backups and no undo option. Once you decide to restart any data group the action is permanent.
In order to help you cope with resetting your whole site, WP reset offers the option to make database snapshots. Think of these snapshots in a similar way to system restore points in Windows. They are a copy of all WP database tables, both standard and custom.
The images are of database tables only; no actual files are saved. The main reason you’ll want to make these snapshots is to keep track of changes plugins make to your site and/or to restore databases after testing changes done specifically to them. You can make multiple snapshots and none of them affect each other.
The WP Reset plugin has a simple enough premise. Essentially it does one thing, but it does that one thing in a way that is beneficial across the board. You can use it fully to completely wipe the slate clean for a site and you can use it sparsely to target specific data, making it highly flexible. Combine that with useful development tools like snapshots, WP-CLI and WP Webhooks support and you’ve got yourself something that should be present on any developmental site and in most cases on many live sites as well.
You’ll probably use a function like this only in dire need (or during testing on local sites), because of the ramifications that it has, but in those rare cases you will have to use it you’ll be really glad you have it. You know what they say after all – better be safe than sorry.