Cómo optimizar la tabla wp_options en WordPress

Aprende cómo optimizar la tabla wp_options en WordPress, limpiar datos innecesarios, reducir el autoload y mejorar el rendimiento de tu web.

Si tu página web empieza a funcionar más despacio de lo habitual, optimizar la tabla wp_options en WordPress puede ayudarte a reducir consultas innecesarias, eliminar datos obsoletos y mejorar el rendimiento general de la instalación.

La tabla wp_options es una de las tablas más importantes de la base de datos de WordPress, ya que almacena configuraciones del propio CMS, plugins, temas, widgets, transients y numerosos ajustes internos.

Con el paso del tiempo, esta tabla puede acumular miles de registros que ya no son necesarios, especialmente si has instalado, probado y eliminado numerosos plugins o temas.

Además, determinadas opciones pueden configurarse para cargarse automáticamente mediante autoload, haciendo que WordPress las recupere prácticamente en cada petición aunque realmente no sean necesarias.

En este tutorial vas a aprender cómo optimizar wp_options de forma segura, localizar los registros que ocupan más espacio y eliminar algunos de los residuos más habituales.

⚠️ Antes de empezar, debes tener presente que estás trabajando directamente con la base de datos de WordPress, por lo que eliminar un registro incorrecto puede provocar errores en tu página.

📋 Resumen para optimizar wp_options

AcciónObjetivoDificultadRiesgo
Crear una copia de seguridadPoder restaurar la base de datosFácilMuy bajo
Comprobar el tamaño de wp_optionsDetectar una tabla demasiado grandeFácilNinguno
Revisar opciones autoloadReducir datos cargados automáticamenteMedioMedio
Buscar opciones grandesDetectar plugins o ajustes problemáticosMedioBajo
Limpiar transientsEliminar datos temporalesFácilBajo
Eliminar opciones huérfanasLimpiar restos de plugins eliminadosMedioAlto
Optimizar la tablaRecuperar espacio y reorganizar datosFácilBajo
Revisar nuevamente el rendimientoComprobar el resultadoFácilNinguno

🗄️ ¿Qué es la tabla wp_options?

La tabla wp_options almacena una enorme variedad de ajustes utilizados por WordPress y sus plugins, por lo que prácticamente todas las instalaciones dependen continuamente de ella.

Dentro de esta tabla encontrarás columnas como option_id, option_name, option_value y autoload, cada una destinada a almacenar información relacionada con una determinada configuración.

El nombre wp_options puede ser diferente en tu instalación si durante la configuración de WordPress se estableció un prefijo de tablas personalizado.

Por ejemplo, una página que utilice el prefijo web_ tendrá una tabla llamada web_options en lugar de wp_options.

Por eso debes comprobar siempre el prefijo real de tu base de datos antes de ejecutar cualquiera de las consultas SQL incluidas en este tutorial.

🔒 1. Haz una copia de seguridad de la base de datos

Antes de modificar wp_options, debes crear una copia de seguridad completa de la base de datos para poder recuperar tu página si eliminas accidentalmente información importante.

Puedes realizar esta copia desde el panel de tu hosting, mediante phpMyAdmin o utilizando un plugin especializado en copias de seguridad.

Los pasos recomendados son:

  1. Realiza una copia completa de la base de datos antes de modificar ningún registro.
  2. Descarga una copia a tu ordenador y no dependas exclusivamente de una copia almacenada en el mismo servidor.
  3. Comprueba que puedes restaurarla desde tu hosting o herramienta de copias de seguridad.
  4. Realiza las modificaciones preferiblemente primero en un entorno de staging si tu página recibe tráfico o genera ingresos.

🔎 2. Comprueba cuántos registros contiene wp_options

Puedes utilizar phpMyAdmin desde el panel de administración de tu hosting para consultar fácilmente el contenido de la tabla.

Una vez dentro de phpMyAdmin, selecciona la base de datos utilizada por WordPress y busca la tabla wp_options.

También puedes ejecutar esta consulta:

SELECT COUNT(*) AS total_registros
FROM wp_options;

El número de registros por sí solo no determina si existe un problema de rendimiento, porque resulta mucho más importante analizar cuánto ocupan y cuáles se cargan automáticamente.

⚡ 3. Comprueba las opciones cargadas mediante autoload

Uno de los aspectos más importantes al optimizar wp_options consiste en revisar las opciones que WordPress carga automáticamente.

El sistema autoload permite recuperar determinados ajustes necesarios mediante una única operación y evita consultas adicionales cuando esos datos se utilizan constantemente.

El problema aparece cuando plugins o temas almacenan grandes cantidades de información mediante autoload aunque esos datos no sean necesarios en todas las páginas.

En versiones modernas de WordPress puedes encontrar varios valores relacionados con este comportamiento, por lo que no conviene limitar las búsquedas exclusivamente a autoload = 'yes'.

Para localizar las opciones cargadas automáticamente puedes utilizar una consulta como esta:

SELECT option_name,
       LENGTH(option_value) AS size_bytes,
       autoload
FROM wp_options
WHERE autoload IN ('yes', 'on', 'auto-on', 'auto')
ORDER BY size_bytes DESC;

Esta consulta coloca primero las opciones de mayor tamaño, facilitando enormemente la identificación de registros sospechosos.

WordPress incorpora además comprobaciones relacionadas con las opciones autoload dentro de Salud del sitio, por lo que merece la pena consultar esta sección antes de realizar cambios. Documentación sobre optimización de WordPress

📏 4. Calcula el tamaño total del autoload

También resulta interesante conocer aproximadamente cuántos datos está cargando WordPress automáticamente.

Puedes obtener el tamaño total con esta consulta:

SELECT SUM(LENGTH(option_value)) AS total_autoload_bytes
FROM wp_options
WHERE autoload IN ('yes', 'on', 'auto-on', 'auto');

Una cantidad elevada no significa automáticamente que exista un problema, pero sí debería llevarte a investigar cuáles son las opciones más pesadas y quién las ha creado.

No desactives autoload indiscriminadamente porque determinadas configuraciones son utilizadas continuamente por el núcleo, el tema o los plugins y puedes empeorar el rendimiento en lugar de mejorarlo.

🐘 5. Localiza las opciones más grandes de wp_options

Otra consulta particularmente útil consiste en mostrar los registros de mayor tamaño independientemente de su configuración de autoload.

Utiliza:

SELECT option_name,
       LENGTH(option_value) AS size_bytes,
       autoload
FROM wp_options
ORDER BY size_bytes DESC
LIMIT 50;

Con esta consulta podrás comprobar rápidamente si algún plugin está almacenando cientos de kilobytes o incluso varios megabytes dentro de una sola opción.

Cuando encuentres un registro especialmente grande, busca primero el nombre de la opción para identificar qué plugin, tema o componente la utiliza antes de modificarla.

🧹 6. Limpia los transients de WordPress

Los transients son datos temporales almacenados por WordPress y sus plugins para evitar repetir determinadas operaciones costosas.

En condiciones normales deberían caducar automáticamente, pero algunas instalaciones pueden terminar acumulando transients antiguos o innecesarios.

Puedes localizar los transients almacenados en wp_options con:

SELECT option_name
FROM wp_options
WHERE option_name LIKE '_transient_%';

En lugar de borrarlos manualmente sin comprobar su procedencia, puedes utilizar herramientas específicas o WP-CLI para gestionarlos de una manera más controlada.

Si tienes acceso SSH, WP-CLI resulta especialmente útil para administrar WordPress desde la terminal.

🗑️ 7. Elimina opciones pertenecientes a plugins desinstalados

Uno de los motivos más frecuentes por los que wp_options aumenta de tamaño es que algunos plugins no eliminan todos sus ajustes cuando son desinstalados.

Después de varios años administrando una página puedes terminar conservando configuraciones pertenecientes a plugins que eliminaste hace mucho tiempo.

Para encontrarlas debes observar el campo option_name, porque muchos desarrolladores utilizan un prefijo relacionado con el nombre de su plugin.

Sigue este procedimiento:

  1. Identifica el nombre de la opción que parece pertenecer a un plugin eliminado.
  2. Busca el nombre en Internet o revisa la documentación del desarrollador para confirmar qué plugin la creó.
  3. Comprueba que el plugin realmente ya no está instalado ni es utilizado por otro componente.
  4. Realiza nuevamente una copia de seguridad antes de borrar grandes cantidades de registros.
  5. Elimina únicamente las opciones cuya procedencia y función hayas podido confirmar.

No recomiendo ejecutar consultas genéricas que eliminen cientos de opciones basándose únicamente en su antigüedad o nombre porque puedes destruir configuraciones necesarias para el funcionamiento de WordPress.

💻 8. Analiza wp_options mediante WP-CLI

Si administras WordPress mediante SSH, WP-CLI permite analizar las opciones sin depender constantemente de phpMyAdmin.

Para comprobar el tamaño total de las opciones configuradas con autoload puedes utilizar:

wp option list --autoload=on --format=total_bytes

También puedes ordenar las opciones por tamaño para encontrar rápidamente aquellas que merecen una revisión más detallada.

wp option list --autoload=on --fields=option_name,size_bytes,autoload --orderby=size_bytes --order=desc

WP-CLI permite además consultar, modificar y eliminar opciones individualmente, pero deberías realizar cualquier cambio únicamente cuando conozcas exactamente la función del registro. Documentación oficial del comando wp option

⚙️ 9. ¿Debes cambiar autoload de yes a no?

Cambiar el comportamiento de autoload puede producir una mejora considerable cuando una opción grande se carga innecesariamente, pero hacerlo indiscriminadamente es una mala práctica.

Una opción utilizada constantemente debería poder permanecer en autoload porque recuperarla individualmente mediante consultas adicionales podría resultar menos eficiente.

En cambio, una configuración enorme utilizada únicamente dentro de una página concreta de administración podría ser una buena candidata para desactivar su carga automática.

En instalaciones modernas resulta preferible utilizar las funciones y herramientas proporcionadas por WordPress o WP-CLI antes que modificar manualmente los valores internos de autoload mediante SQL.

Por ejemplo, WP-CLI dispone de comandos específicos para consultar y modificar esta propiedad:

wp option get-autoload nombre_de_la_opcion

Y para desactivarla:

wp option set-autoload nombre_de_la_opcion off

Antes de ejecutar el segundo comando debes confirmar que esa opción no necesita cargarse automáticamente, especialmente si pertenece al núcleo, a WooCommerce, a un sistema de caché o a un plugin esencial.

🛠️ 10. Optimiza físicamente la tabla wp_options

Después de eliminar una cantidad considerable de información puedes ejecutar una optimización de la tabla desde las herramientas proporcionadas por tu hosting o phpMyAdmin.

También puedes utilizar la siguiente instrucción MySQL:

OPTIMIZE TABLE wp_options;

Esta operación puede ayudar a reorganizar la tabla y recuperar espacio después de eliminaciones importantes, aunque no debes considerarla un sustituto de limpiar los datos innecesarios.

En sitios con mucho tráfico conviene realizar este tipo de tareas durante periodos de poca actividad y comprobar previamente cómo gestiona tu servidor o proveedor de base de datos la operación.

🚫 Qué no debes borrar de wp_options

El mayor error al intentar acelerar WordPress consiste en considerar que cualquier opción desconocida puede eliminarse sin consecuencias.

Evita borrar registros relacionados con URLs del sitio, configuración activa del tema, usuarios, plugins activos, cron, permisos, cachés internas o configuraciones cuyo propósito desconozcas.

Tampoco utilices consultas SQL encontradas en Internet que eliminen masivamente registros sin comprender primero qué datos seleccionan exactamente.

Una tabla wp_options con muchos registros no tiene necesariamente un problema, mientras que una tabla relativamente pequeña puede afectar al rendimiento si contiene unas pocas opciones autoload extremadamente pesadas.

🚀 Cómo mantener wp_options optimizada

La mejor estrategia no consiste en limpiar la base de datos cada semana, sino en evitar que plugins mal configurados o abandonados acumulen información indefinidamente.

Para mantenerla bajo control:

  1. Desinstala correctamente los plugins que ya no utilices.
  2. Revisa periódicamente Herramientas → Salud del sitio para detectar problemas relacionados con la base de datos y autoload.
  3. Comprueba ocasionalmente cuáles son las opciones más grandes almacenadas en wp_options.
  4. Reduce la instalación de plugins redundantes que realizan funciones prácticamente idénticas.
  5. Mantén WordPress, el tema y los plugins actualizados.
  6. Utiliza un sistema de caché de objetos persistente cuando tu alojamiento y las características de la web hagan recomendable su uso.
  7. Evita utilizar herramientas de limpieza automática que borren registros sin permitirte comprobar previamente qué información será eliminada.

✅ Conclusión

Aprender cómo optimizar la tabla wp_options en WordPress puede ayudarte a solucionar uno de los problemas de rendimiento más difíciles de detectar en instalaciones que llevan años funcionando.

La prioridad debería ser localizar opciones autoload excesivamente grandes, transients innecesarios y residuos de plugins desinstalados, en lugar de intentar reducir el número de filas de la tabla sin ningún criterio.

Si realizas una copia de seguridad, analizas cada registro antes de eliminarlo y haces los cambios de forma gradual, podrás conseguir una base de datos más limpia y eficiente sin poner en riesgo tu página web.

Deja un comentario

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

¿Necesitas ayuda?

Si estás teniendo problemas con tu proyecto online, si estás en proceso de crearlo, si necesitas una web o si la tuya no funciona como debería puedo ayudarte.

¿Quién soy?
Blog
Portfolio

Carrito de compra
Scroll al inicio