Plugins could be a nice boon to WordPress websites, however there are occasions they outlive their usefulness.
If a plugin fulfills a perform you don’t want anymore, stops being up to date, or seems to sluggish your website down, it might be time to take away it.
Usually to delete a plugin you’d go to the Plugins part of the admin, deactivate it first, after which choose the delete choice. Then you definately’re accomplished… proper?
Sadly, not all the time.
Uninstalling a plugin ought to be a easy process, however it’s not all the time the case. Plugins can retailer information in various locations, and sadly, not all builders embrace an uninstall script which totally removes that information.
On this publish, we’ll cowl:
What plugins sometimes retailer information?
The place do plugins retailer information?
What’s in a brand new set up of WordPress?
How simple is it to completely delete plugins?
Plugins which have uninstallers in wp-admin
Plugins which have uninstall scripts
Different plugin uninstall strategies
Plugins that go away information behind
How do you clear up after messy plugins?
What plugins sometimes retailer information?
Plugins which ask for person enter are the most probably to retailer information.
They embrace:
Kind plugins
Caching plugins
search engine marketing plugins
Safety plugins
The place do plugins retailer information?
The wp_options database desk shops data on which plugins are energetic, and what settings they’ve energetic.
Customized database tables are created by some plugins to retailer information.
Plugins might modify WordPress’ wp-config.php file. In case your website runs on Apache, the .htaccess file might have guidelines added to it. These might embrace safety or caching settings, for instance.
Recordsdata and folders inside the wp-content folder could also be created by plugins too.
To determine what’s added by plugins, it helps to know what’s in an ordinary WordPress set up.
What’s in a brand new set up of WordPress?
Database tables
A brand new set up of WordPress could have the next tables:
wp_commentmeta
wp_comments
wp_links
wp_options
wp_postmeta
wp_posts
wp_termmeta
wp_terms
wp_term_relationships
wp_term_taxonomy
wp_usermeta
wp_users
In case you arrange a multisite you’ll have these 12 tables plus a number of extra:
wp_blogs
wp_blog_versions
wp_registration_log
wp_signups
wp_site
wp_sitemeta
Your WordPress set up might need a prefix aside from wp_ in the event you selected one other one on set up, or have altered it via using a plugin. (For simplicity I’ll proceed to say wp_ as a shorthand in your database desk prefix.)
For every new website you add to a multisite, there might be one other ten tables beginning with wp_2_ and so on.
wp-content folder
The fundamental WordPress folder has an index.php file and two subfolders:
plugins
themes
A mature set up will possible produce other subfolders which can embrace the next:
languages
mu-plugins
improve
uploads
Some other folders current might have been created by a plugin.
How simple is it to completely delete plugins?
I examined this out on a single WordPress set up with some present plugins. I attempted putting in and deleting various widespread plugins to see how simple it was to uninstall them utterly.
All of the plugins I examined saved data in wp_options.
Plugins which have uninstallers in wp-admin
Gravity Types
What’s saved?
Gravity Types creates 9 new database tables:
wp_rg_form
wp_rg_form_meta
wp_rg_form_view
wp_rg_incomplete_submissions
wp_rg_lead
wp_rg_lead_detail
wp_rg_lead_detail_long
wp_rg_lead_meta
wp_rg_lead_notes
How must you uninstall Gravity Types?
Go to Types > Settings > Uninstall.
Click on the button.
Select OK.
Go to the plugin display to completely delete the plugin.
Is all the things deleted?
All 9 customized tables are deleted, however some information stays within the wp_options desk.
Wordfence
What’s saved?
A whopping 23 database tables are created by this widespread safety plugin.
wp_wfBadLeechers
wp_wfBlockedCommentLog
wp_wfBlockedIPLog
wp_wfBlocks7
wp_wfConfig
wp_wfCrawlers
wp_wfFileChanges
wp_wfFileMods
wp_wfHits
wp_wfHoover
wp_wfIssues
wp_wfKnownFileList
wp_wfLeechers
wp_wfLocs
wp_wfLogins
wp_wfNet404s
wp_wfNotifications
wp_wfPendingIssues
wp_wfReverseCache
wp_wfScanners
wp_wfSNIPCache
wp_wfStatus
wp_wfVulnScanners
You’ll additionally see a wflogs folder in wp-content.
How must you uninstall Wordfence?
A substitute for Wordfence’s handbook uninstall is including the Wordfence Assistant plugin to do the job.
To make use of Wordfence Assistant, deactivate and delete Wordfence as regular. Then in Wordfence Assistant’s choices, select the Delete All Wordfence Knowledge and Tables choice.
Is all the things deleted?
Utilizing Wordfence Assistant, the database and recordsdata have been purged of Wordfence content material.
Plugins which have uninstall scripts
Properly developed plugins have an uninstall.php file to care for the uninstall course of.
For instance:
Damaged Hyperlink Checker’s uninstall script removes its 4 database tables.
Relevanssi’s uninstall script removes 3 tables created by the plugin.
WP Rocket has an uninstall script which is meant to take away all information and recordsdata together with the advanced-cache.php file. Once I tried it, I seen that this file stayed put after the plugin was gone.
Different plugin uninstall strategies
If there isn’t any uninstall script, some plugins have offered different recommendations for a whole uninstall.
NextGEN Gallery
This plugin creates 3 database tables:
wp_ngg_album
wp_ngg_gallery
wp_ngg_pictures
It additionally creates an ngg folder inside wp-content.
You have to to manually take away the three tables and the folder, as they aren’t eliminated on uninstall. Do this recommendation for a full NextGen Gallery uninstall.
WooCommerce
WooCommerce creates 16 tables:
wp_wc_download_log
wp_wc_webhooks
wp_woocommerce_api_keys
wp_woocommerce_attribute_taxonomies
wp_woocommerce_downloadable_product_permissions
wp_woocommerce_log
wp_woocommerce_order_itemmeta
wp_woocommerce_order_items
wp_woocommerce_payment_tokenmeta
wp_woocommerce_payment_tokens
wp_woocommerce_sessions
wp_woocommerce_shipping_zones
wp_woocommerce_shipping_zone_locations
wp_woocommerce_shipping_zone_methods
wp_woocommerce_tax_rates
wp_woocommerce_tax_rate_locations
WooCommerce advocate including a line to wp-config.php for a accomplished uninstall:
I attempted this twice and didn’t get an ideal uninstall both time. Keep in mind to double-check that the info has gone.
Plugins that go away information behind
These are some plugins I discovered which don’t take away all information when uninstalled.
Akismet
Akismet shops numerous information within the wp_commentmeta desk, which stays on deletion.
Mine had almost 6,000 rows!
EWWW Picture Optimizer
This plugin shops information in regards to the path to your pictures, their unique dimension, dimension after compression and % discount within the desk wp_ewwwio_images. This desk stayed once I eliminated the plugin, as did an ewww folder.
WP All Export
4 tables are created by this plugin:
wp_pmxe_exports
wp_pmxe_google_cats
wp_pmxe_posts
wp_pmxe_templates
These usually are not eliminated when the plugin is deleted.
Yoast search engine marketing
Yoast search engine marketing creates 2 tables:
wp_yoast_seo_links
wp_yoast_seo_meta
It additionally shops some information in:
wp_usermeta – accommodates some meta_key values like wpseo_title.
wp_postmeta – accommodates some meta_key values for numerous publish ids, together with:
_yoast_wpseo_linkdex
_yoast_wpseo_title
_yoast_wpseo_metadesc
_yoast_wpseo_focuskw
_yoast_wpseo_focuskw_text_input
_yoast_wpseo_primary_category
_yoast_wpseo_content_score
A deactivate/delete uninstall leaves all this information behind.
How do you clear up after messy plugins?
Firstly, again up your website (recordsdata and database) in case you make a mistake. Tremendous vital!
WPMU Dev members can use Snapshot Professional for backups.
You’ll be utilizing FTP and SQL queries for the clear up. In case you’re not snug with these, have an professional available.
Delete pages
For any plugin that created pages, delete them in the event that they weren’t eliminated on uninstall and also you don’t want them any extra. Keep in mind to 301 redirect the web page permalinks.
Take away undesirable database tables
Any tables which aren’t a part of the standard WordPress set up are more likely to be tables added by plugins.
You should use phpMyAdmin, a database manipulation software out there on most internet hosting management panels.
Use the Drop choice to delete particular person tables from undesirable plugins.
Or choose a number of tables and choose Drop from the With chosen dropdown, then verify.
Another choice is to make use of the Superior Database Cleaner plugin to examine your tables inside WordPress.
There’s a button to detect orphaned tables, although you might want to improve to the Professional model to make use of it.
Any plugin-related tables that you simply’re certain you don’t want you’ll be able to delete. Verify them and select Delete from the Bulk Actions dropdown.
Delete redundant folders from wp-content
FTP into your website and verify the contents of recordsdata and folders you don’t recognise. In case you’re certain you gained’t want them, delete them.
For instance:
EWWW Picture optimizer provides an ewww folder.
NextGEN Gallery provides two folders – gallery and ngg.
WP Rocket provides advanced-cache.php and a cache folder.
Verify wp-config.php and .htaccess recordsdata
These are crucial recordsdata, so copy them first earlier than modifying them!
In case you spot any traces in wp-config.php added by plugins you’ve deleted, take away them.
In .htaccess search for a # adopted by the plugin title and take away any traces in between.
Keep in mind to add the up to date file(s) if you find yourself accomplished.
Cleansing up transients and cron jobs
Transients are information saved briefly by WordPress. Checks for WordPress updates and notices on the admin dashboard are saved in transients. Transients are (largely) set to run out after a set time interval, and are recreated over time.
Some plugins create transients. The Transients Supervisor plugin will provide help to determine which plugins have accomplished so, and you’ll delete any you now not want to preserve.
Deleting all transients gained’t take away all of them – the WordPress ones stay.
Cron jobs are scheduled duties that may be run on an internet server. WordPress runs its personal cron jobs via WP-Cron.
WP Crontrol plugin will present you what cron jobs are working and when.
You possibly can modify or delete the cron jobs, however some core cron jobs can’t be deleted.
Sadly you’re on the mercy of the plugin developer relating to naming cron jobs. If the title of a job is unclear, don’t delete it, as it might have an effect on the efficiency of a plugin you rely upon.
Cleansing up your database tables
Now it’s time to run some database queries for a closing clear up.
Akismet
Did you utilize Akismet? It is a tidying up process you’ll be able to run even in the event you proceed to make use of the plugin, since Akismet generates numerous desk rows.
On the wp_commentmeta desk, run the SQL question:
(Keep in mind to vary wp_ on this question you probably have a special desk prefix.)
Then assuming the question discovered some rows, run the question
It is best to now have a a lot lighter wp_commentmeta desk.
Yoast search engine marketing
Yoast information appears to lurk all over the place!
Do this SQL question on the wp_postmeta desk:
For wp_usermeta strive:
wp_options desk
Most plugins go away some entries within the wp_options desk. If you wish to go the entire hog in cleansing you’ll be able to take away the rows associated to your deleted plugins.
Use related queries to the earlier ones to search out related rows, and if any are discovered, delete them:
Change the pluginname with the title or abbreviation of the plugin you’re on the lookout for (preserve the % indicators). Most are simple however a number of might have some educated guesswork. Examples are:
EWWW Picture Optimizer: ewwwio
NextGEN Gallery: ngg
WooCommerce: wc
Whilst you’re at it, you are able to do some extra housekeeping by following these 10 database optimization suggestions and these WordPress clear up suggestions.
Summing up
Deleting plugins will not be all the time as simple because it seems. A whole lot of data will be saved by plugins each within the filesystem and the database, and plugin builders differ on the thoroughness of their uninstall routines.
Most of us assume an uninstall means deleting all information, and that’s not frequently the case.
In case you’re a plugin developer, you won’t be capable to bear the thought that somebody might by no means use your plugin once more! However most customers will thanks for together with an uninstall script. Please observe the Uninstall Strategies part within the plugin improvement handbook.
As a person, choose your plugins fastidiously. Discover out from builders the way you uninstall them. Check out new plugins on a staging website relatively than your dwell website to maintain your website clutter-free. And keep in mind as a basic rule, the larger the plugin, the extra information it shops.
Subscribe to MarketingSolution.
Receive web development discounts & web design tutorials.
Now! Lets GROW Together!