Cómo desinstalar completamente un plugin WordPress

icono borrar plugins wordpress

Instalar plugins WordPress es fácil, igual que instalar temas WordPress, pero a veces hay plugins que se resisten, como por ejemplo, los plugins de caché, que no son tan fáciles de desinstalar. Y no son los únicos que no se desinstalan del todo.

En principio el concepto es fácil:

  1. Ve a la administración de tu WordPress > Plugins
  2. Haz clic en Desactivar.
  3. Una vez desactivado haz clic en Borrar.

Hecho esto el plugin está inactivo y has borrado la carpeta, y archivos dentro de esa carpeta, del plugin, pero ¿has desinstalado completamente el plugin?

Muchas veces no es así, pues en ocasiones los plugins pueden dejar restos en los siguientes sitios:

  • Líneas adicionales en el archivo wp-config.php
  • Líneas adicionales en el archivo .htaccess
  • Tablas nuevas en la base de datos
  • Información propia en las tablas de WordPress
  • Archivos y directorios adicionales en las carpetas raíz, wp-content, uploads, plugins.

Así que, el primer paso para poder identificar lo que es de WordPress y lo que añaden los plugins es saber qué compone una instalación estándar de WordPress y qué no.

Qué hay en una instalación WordPress estándar

escritorio de instalación estandar wordpress

Tablas de la base de datos

Las tablas por defecto de la base de datos de un WordPress recién instalado son 12, estas:

  1. wp_commentmeta
  2. wp_comments
  3. wp_links
  4. wp_options
  5. wp_postmeta
  6. wp_posts
  7. wp_termmeta
  8. wp_terms
  9. wp_term_relationships
  10. wp_term_taxonomy
  11. wp_usermeta
  12. wp_users

Y en el caso de una instalación multisitio hay otras 6 tablas adicionales:

  1. wp_blogs
  2. wp_blog_versions
  3. wp_registration_log
  4. wp_signups
  5. wp_site
  6. wp_sitemeta

Visto lo cual, si en una instalación sencilla de WordPress tienes más de 12 tablas ya puedes dar por hecho que algún plugin, o incluso el tema, ha creado alguna tabla adicional. Igualmente, en una instalación multisitio, si tienes más de 18 tablas.

Carpetas de una instalación WordPress

Por defecto, WordPress crea estas carpetas principales:

  • wp-admin
  • wp-includes
  • wp-content
    • plugins
    • themes

Más adelante, cuando tenga algo de vida, normalmente crecerá un poco, así:

  • wp-admin
  • wp-includes
  • wp-content
    • languages
    • mu-plugins
    • plugins
    • themes
    • upgrade
    • uploads

Y, en ambos casos, todas estas carpetas menos uploads tendrán subcarpetas.

Como verás, si algún plugin mete archivos y/o carpetas en subcarpetas adicionales la cosa sería realmente complicada. Afortunadamente la mayoría de los plugins que hacen estas cosas añaden carpetas y/o archivos a wp-content y/o uploads.

¿Dónde encuentro residuos de plugins WordPress desinstalados?

En base a lo anterior, los sitios sospechosos más habituales donde puedes encontrar residuos de plugins desinstalados serían los siguientes:

  1. Carpetas y/o archivos adicionales dentro de wp-content y/o uploads.
  2. Tablas adicionales en la base de datos.
  3. Líneas adicionales en la tabla wp_options de WordPress (casi todos)

Cómo desinstalar del todo un plugin WordPress

limpiar wordpress

Visto lo anterior son muchas cosas a revisar, y conscientes de que cada desarrollador y cada plugin es un mundo, y de que no hay un estándar de cómo un plugin debe desinstalarse, no nos queda otra que revisar manualmente cada vez que desinstalemos un plugin.

Pero para ello vamos a ver algunos casos concretos, tanto de los que lo hacen bien y se dejan desinstalar del todo, como de los que te dejan basurilla por todas partes.

Los plugins de caché

Como ya vimos en un artículo anterior los plugins de caché son de los que más residuo dejan y suelen requerir acciones manuales.

Y como no vamos a repetir todo lo explicado en aquella ocasión te animo a echar un vistazo al artículo en cuestión, con información y guías detalladas para desinstalar los plugins de caché para WordPress más populares, este:

Cómo desinstalar completamente los plugins de caché en WordPress

Plugins que se desinstalan totalmente (o casi)

Son muchos más los plugins que se desinstalan completamente que los que no lo hacen. Hay miles, así que no vamos a citarlos a todos.

No obstante te dejo algunos (bastante) buenos ejemplos a destacar, que tienen su propio desinstalador:

  • Broken Link Checker: Tiene un script que si lo ejecutas se desinstala del todo, y menos mal, porque crea mucha información en tu base de datos.
  • Gravity Forms: Al desinstalarlo te pide confirmación para borrar toda su información, que borra las 9 tablas de la base de datos que añadió. Solo te quedará limpiar líneas manualmente en la tabla wp_options (ya te dije que de esto pecan la mayoría).
  • WordFence: Si instalas el plugin WordFence Assistant (recomendable siempre) puedes borrar todas las 23 tablas del plugin al desinstalarlo.

Mi consejo es que no te fíes de ninguno, y siempre busques – al menos – si han dejado carpetas, archivos, nuevas tablas o – casi siempre – información adicional en la tabla wp_options.

Plugins que requieren trabajo adicional para desinstalarlos del todo

También son muchos, de hecho son legión, y no sabría ni por dónde empezar, así que tomaremos algunos casos significativos como ejemplo, para saber qué mirar y que posibilidades ofrecen para desinstalarlos.

WooCommerce

Si alguna vez has instalado WooCommerce para probar si instalabas una tienda online y luego has desistido tras probar por el motivo que sea, debes saber que no está desinstalado del todo aunque lo hayas desactivado y borrado.

De hecho, desde la propia página oficial de WooCommerce se indica que para desinstalar completamente el plugin, antes de desactivarlo, debes añadir la siguiente línea a tu archivo wp-config:

/* Desinstalar totalmente WooCommerce */
define( 'WC_REMOVE_ALL_DATA', true);

De este modo, cuando lo desactives y lo borres, esa constante borrará las, nada menos que, 16 tablas que añade a tu base de datos, estas:

  1. wp_wc_download_log
  2. wp_wc_webhooks
  3. wp_woocommerce_api_keys
  4. wp_woocommerce_attribute_taxonomies
  5. wp_woocommerce_downloadable_product_permissions
  6. wp_woocommerce_log
  7. wp_woocommerce_order_itemmeta
  8. wp_woocommerce_order_items
  9. wp_woocommerce_payment_tokenmeta
  10. wp_woocommerce_payment_tokens
  11. wp_woocommerce_sessions
  12. wp_woocommerce_shipping_zones
  13. wp_woocommerce_shipping_zone_locations
  14. wp_woocommerce_shipping_zone_methods
  15. wp_woocommerce_tax_rates
  16. wp_woocommerce_tax_rate_locations

Luego elimina esa línea de tu wp-config.php.

En caso contrario, si ya desactivaste y borraste el plugin te tocará borrar las tablas manualmente desde PHPMyAdmin, bien una a una o seleccionando las anteriores todas de golpe, como en la siguiente captura…

borrar tablas wordpress

Nota importante: Antes de modificar y/o borrar nada en la base de datos haz copia de seguridad

Yoast SEO

Otro de los plugins más populares también deja bastante residuo si lo desinstalas.

Yoast SEO crea 2 tablas:

  • wp_yoast_seo_links
  • wp_yoast_seo_meta

Pero también almacena información en :

  • wp_usermeta – valores meta_key como wpseo_title.
  • wp_postmeta – valores meta_key para varios IDs de entrada, incluidos:
    1. _yoast_wpseo_linkdex
    2. _yoast_wpseo_title
    3. _yoast_wpseo_metadesc
    4. _yoast_wpseo_focuskw
    5. _yoast_wpseo_focuskw_text_input
    6. _yoast_wpseo_primary_category
    7. _yoast_wpseo_content_score

Y todo esto después de desactivar y borrar.

Akismet

Akismet almacena montones de datos en la tabla wp_commentmeta, que seguirán ahí después de borrar el plugin. Y estoy hablando de miles de líneas.

EWWW Image Optimizer

Este plugin para optimización de imágenes, tras borrarlo, almacena rutas a tus imágenes, en su tamaño original, el tamaño tras comprimirlas y el porcentaje de reducción.

Todo lo guarda en una única tabla, wp_ewwwio_images.

También tendrás que borrar manualmente la carpeta ewww, dentro de wp-content.

¿Y los shortcodes?

Otra de la basurilla que suelen dejar los plugins cuando los desinstalas son los shortcodes que usen para mostrar contenidos de cualquier tipo.

Esta es otra tarea adicional que tendrás que realizar, normalmente buscando en la pantalla de entradas por el shortcode del plugin y, a continuación, editando la entrada que lo contenía.

borrar shortcodes wordpress

Resumiendo ¿qué hago?

Pues si has leído todo lo anterior, yo lo resumiría así:

  1. Antes de nada haz copia de seguridad de la base de datos y archivos
  2. Ve a tu Escritorio > Plugins y desactiva el plugin
  3. También en Escritorio > Plugins borra el plugin
  4. Borra cualquier carpeta y/o archivo adicional que instalase el plugin
  5. Borra cualquier tabla de la base de datos que añadió el plugin al instalarlo
  6. Si usaba shortcodes búscalos y bórralos de tus entradas y/o páginas
  7. Revisa la tabla wp_options a ver si ha dejado líneas propias

Que el Codex te acompañe y de fuerza, la vas a necesitar.

VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(11 votos, promedio: 4.4)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

7 comentarios en “Cómo desinstalar completamente un plugin WordPress”

  1. Que buen post Fernando! En función de como esté programado el plugin puede dejar más o menos residuos, los desarrolladores de plugins deberían plantearse darle al usuario de opción de borrar todo el contenido del plugin al borrarlo y no tener que ir buscando que cosas que no se han eliminado.

  2. Hola Fernando, Me encanta leer tus artículos recién me levanto. Hace tiempo instalé Woocomerce, después lo desinstalé sin borrar las carpetas. Ahora estoy considerando volver a instalarlo. Mi duda es ¿si lo vuelvo a instalar las carpetas se duplican o usa las existentes?

      1. Gracias. Ya borré las carpetas gracias a tu artículo fue fácil. Ahora tengo el problema con Elementor, no aparece en la lista de plugins instalados y al intentar instalarlo me dice que ya existe. En public_html/wp-content/plugins está la carpeta de Elementor pero no sé que debo hacer. ¿Tienes algún artículo para solucionarlo? Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Ir arriba Ir al contenido