WordPress-plugin verwijderen: ook de database opruimen die na het verwijderen in het beheerscherm achterblijft

Affiliatemelding v3.1
Affiliatemelding v3.2 (mobiel)

Een WordPress-plugin verwijderen is in het beheerscherm met één klik gebeurd, maar de tabellen en instellingen die de plugin heeft aangemaakt, blijven vaak in de database staan. Ook bij mij stonden er op 2026-10-09 nog 8 tabellen en 38 optierijen van twee lang geleden verwijderde plugins voor advertenties en reacties.

Hieronder lees je stap voor stap hoe je een plugin in het beheerscherm verwijdert en hoe je daarna de achtergebleven shortcodes, mappen en databasegegevens opruimt.

1️⃣ Een plugin verwijderen in het beheerscherm

Klik onder [Plugins] > [Geïnstalleerde plugins] eerst op [Deactiveren] en daarna op [Verwijderen], dat in dezelfde rij verschijnt.

WordPress-plugin verwijderen - beheerpagina

Bevat de plugin opruimcode, dan wordt die op dat moment uitgevoerd; zonder opruimcode worden alleen de bestanden verwijderd en blijven de gegevens staan.

2️⃣ Waarom er na verwijderen gegevens achterblijven

Bij het verwijderen van een plugin voert WordPress het bestand [uninstall.php] van die plugin uit, of de functie die met [register_uninstall_hook] is geregistreerd. Het wissen van gegevens is aan die code overgelaten, dus plugins zonder zulke code, of met code die maar een deel wist, laten tabellen en opties achter.

Soms laten ontwikkelaars gegevens bewust staan, zodat de instellingen terugkomen als je de plugin opnieuw installeert. Sommige plugins, zoals Wordfence, bieden in hun instellingen een optie om ook de gegevens te wissen, en de meertalige plugin Polylang biedt dezelfde optie.

WordPress-plugin verwijderen en deactiveren - Wordfence-plugin met een verwijderoptie
Verwijderoptie van de Wordfence-plugin

3️⃣ Wat achtergebleven gegevens met je site doen

Van de achtergebleven opties worden rijen met [autoload] aan bij elke paginaweergave samen met de andere instellingen in het geheugen geladen. Bij mij waren [wc_options] (15KB) van wpDiscuz en [advanced-ads-ab-module] (14KB) van Advanced Ads zulke rijen.

Mijn autoload-totaal is echter ongeveer 392KB, waarvan zo'n 39KB achtergebleven rijen; dat geeft geen merkbaar snelheidsverschil. Het scherm [Sitediagnose] van WordPress waarschuwt pas als het autoload-totaal boven 800KB komt.

Nadat autoload bij de 23 achtergebleven rijen was uitgezet, daalde de [Autoload size] in Advanced Database Cleaner van 391.52KB naar 353.36KB.

Advanced Database Cleaner autoload-grootte 391.52KB (vóór het opruimen)
Advanced Database Cleaner autoload-grootte 353.36KB (na het opruimen)

Normaal gesproken is dat geen probleem. Bezoekers die een gecachte pagina krijgen, gaan niet door PHP; het autoload-pakket wordt alleen geladen door verzoeken die de cache overslaan, zoals het beheerscherm, het eerste bezoek direct na het legen van de cache en bots. Komen zulke verzoeken tegelijk binnen, dan pakt elk verzoek het autoload-pakket in het geheugen uit, dus hoe groter de autoload van een site, hoe sneller de serverbelasting stijgt.

Opties met autoload uit en achtergebleven tabellen worden zonder de plugin nooit gelezen, dus ze hebben geen invloed op de snelheid; ze maken alleen de database en de back-ups groter.

4️⃣ Achtergebleven sporen opruimen

Maak eerst een volledige back-up voordat je de database aanraakt.

🔲 Shortcodes

Shortcodes die een plugin in berichten zette, verschijnen na het verwijderen van de plugin als letterlijke tekst tussen vierkante haken in de inhoud. Zolang je de berichten niet een voor een hebt aangepast, zet je de regel hieronder in de [functions.php] van je thema, zodat de shortcode niets meer uitvoert.

add_shortcode( 'pluginshortcode', '__return_false' );

Ook ik gebruikte zo'n tien shortcodes van een tabelplugin; toen die plugin wegens een beveiligingsprobleem werd verwijderd, zijn de shortcodes en tabellen een voor een opgeruimd, en sindsdien gebruik ik geen shortcodes meer.

🔲 Pluginmap

Is een map niet via het beheerscherm verwijderd, verwijder hem dan zelf onder [wp-content/plugins] via FTP, cPanel of SSH.

🔲 Databasetabellen en -rijen (phpMyAdmin)

De meeste hostingproviders bieden phpMyAdmin aan.

WordPress phpMyAdmin - pad na het kiezen van een tabel

Achtergebleven tabellen zoek je op het tabblad [Structuur] aan de hand van de pluginnaam, waarna je ze verwijdert. Het scherm hieronder gebruikt Yoast SEO als voorbeeld.

WordPress phpMyAdmin - een tabel zoeken en verwijderen op het tabblad Structuur

Rijen zoals opties zoek je op het tabblad [Zoeken] met het jokerteken [%], bijvoorbeeld [%yoast%].

WordPress phpMyAdmin - rijen zoeken en verwijderen via Zoeken 1
WordPress phpMyAdmin - rijen zoeken en verwijderen via Zoeken 2

Filter je nog een keer met [Filter rijen], dan zie je of de rijen alleen bij Yoast SEO horen.

WordPress phpMyAdmin - rijen zoeken en verwijderen via Zoeken 3

Rijen blijven meestal achter in [wp_options], [wp_postmeta] en [wp_usermeta], en het voorvoegsel [wp_] in tabelnamen kan per site verschillen. Wis je alleen op naam, dan kun je ook rijen wissen die andere plugins gebruiken; verwijder daarom alleen rijen waarvan je hebt nagegaan bij welke plugin ze horen.

5️⃣ Plugins voor databaseopschoning

Wil je liever in het beheerscherm opruimen dan in phpMyAdmin, gebruik dan Advanced Database Cleaner. Ik gebruik het zelf ook; het toont bij elke optie en tabel onder [Belongs to] bij welke plugin die hoort, zodat je kunt zien welke rijen weg mogen.

Rijen waarbij [Belongs to] op [Not scanned yet] staat, zijn niet ongebruikt; hun eigenaar is alleen nog onbekend. Ook bij mij bleek een groot deel van de onbekende namen licenties en instellingen van nog actieve plugins zoals Kadence Blocks Pro en WP Ghost; wis je zulke rijen, dan vervalt de licentie of worden de instellingen teruggezet.

Verwijder daarom ook rijen van een verwijderde plugin niet meteen, maar zet eerst hun autoload uit. De waarden blijven bewaard, zodat je het altijd kunt terugdraaien; draait de site een paar dagen zonder problemen, dan verwijder je ze alsnog.

Achtergebleven opties van een verwijderde plugin - autoload auto
Achtergebleven opties van een verwijderde plugin - autoload off

Ook WP-Optimize kan in de gratis versie achtergebleven tabellen verwijderen.

WP-Optimize-plugin - achtergebleven databasetabellen verwijderen
Functie in WP-Optimize om databasetabellen te verwijderen
Plugin (neonbord dat oplicht op een stenen muur)

🔢 FAQ & aanbevolen content

WordPress laadt alleen actieve plugins, dus de code van een gedeactiveerde plugin wordt bij het openen van een pagina niet uitgevoerd. Zolang de bestanden op de server staan, moet je ze wel blijven bijwerken; ben je niet van plan de plugin opnieuw te gebruiken, verwijder hem dan.

Bij actieve plugins staat [Verwijderen] er niet, dus klik eerst op [Deactiveren]. Zie je het dan nog steeds niet, controleer dan in wp-config.php of [DISALLOW_FILE_MODS] op true staat; is dat zo, dan zijn installeren, bijwerken en verwijderen van plugins allemaal geblokkeerd. Bij multisite kan alleen de superbeheerder plugins verwijderen.

[wp plugin uninstall pluginnaam --deactivate] deactiveert de plugin, voert de opruimcode uit en verwijdert ook de bestanden. [wp plugin delete] wist alleen de bestanden zonder opruimcode; wil je ook de gegevens opruimen, gebruik dan uninstall.

Bestanden in de map [wp-content/mu-plugins] zijn verplichte plugins (must-use) die altijd draaien, zonder activeringsstap; daarom heeft het beheerscherm er geen link [Verwijderen] voor. Wil je er een kwijt, verwijder het bestand dan rechtstreeks uit die map via FTP of SSH.

ℹ️ Affiliatemelding
De content van deze site bevat affiliatelinks. Koopt een bezoeker via een van deze links een product of dienst, dan ontvangt deze site een commissie van de verkoper. Het bedrag dat de koper betaalt (bij acties gaat het omlaag ↓) wordt daardoor niet hoger. De vermelde prijzen, kortingen en voorraad gelden op het moment van schrijven en kunnen afwijken; controleer ze daarom vóór je aankoop bij de verkoper. Producten worden gekozen en beoordeeld volgens onze eigen criteria, en commissies hebben geen invloed op de volgorde of de inhoud van de beoordelingen.

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Laat zien dat je geen machine bent: 9   +   9   =