Cuando un sitio WordPress va lento, la reacción habitual es instalar un plugin de caché. Si ya había uno, se instala otro, después un optimizador de imágenes y después un plugin que «minifica» todo. A veces la puntuación de PageSpeed mejora un poco, pero el escritorio sigue lento, la tienda tarda en agregar productos al carrito y los pedidos se procesan con retraso.
La caché esconde la lentitud a los visitantes anónimos; no corrige su causa. Y las partes de un sitio que más importan para el negocio, como el carrito, el checkout, el área de clientes o el escritorio, casi nunca pueden servirse desde caché.
Primero, separa servidor y navegador
«Lento» puede significar dos cosas muy distintas:
- El servidor tarda en responder. La página se queda en blanco antes de empezar a dibujarse. Esto se mide con el tiempo hasta el primer byte (TTFB).
- El navegador tarda en mostrar la página. El servidor responde rápido, pero hay imágenes pesadas, demasiados scripts o fuentes que bloquean el dibujo.
Para medir el primer caso sin herramientas externas, puedes usar curl desde una terminal:
curl -o /dev/null -s -w "TTFB: %{time_starttransfer}s\n" https://tusitio.com/
Prueba la página de inicio, una página interior y, si es una tienda, el carrito con un producto agregado. Si el TTFB es alto incluso en páginas sencillas, el problema está en el servidor o en WordPress, no en las imágenes. Si es bajo y la página aun así tarda, el trabajo está en el navegador, y ahí sí ayudan PageSpeed Insights y la pestaña «Rendimiento» del navegador.
Mira qué hace WordPress en cada petición
El plugin gratuito Query Monitor muestra, para cada página, cuántas consultas a la base de datos se ejecutaron, cuáles fueron las más lentas, qué plugin las originó, qué peticiones HTTP externas se hicieron y cuánto tardó PHP en total. Instálalo de forma temporal y revisa:
- Consultas lentas o repetidas. Una consulta que tarda mucho, o la misma consulta ejecutada cientos de veces, suele señalar a un plugin concreto.
- Peticiones HTTP externas. Un plugin que consulta una API externa en cada carga de página puede añadir segundos de espera, sobre todo si ese servicio responde despacio.
- Componentes por plugin. Query Monitor agrupa el tiempo y las consultas por componente, lo que permite ver qué plugin pesa más.
Desactívalo al terminar: es una herramienta de diagnóstico, no algo para dejar activo.
Revisa las opciones con carga automática
WordPress carga en cada petición todas las opciones de la tabla wp_options marcadas para carga automática. Con los años, plugins desinstalados dejan ahí datos que ya nadie usa, y algunos plugins guardan registros o cachés enormes en esa tabla. El resultado es que cada página arrastra una carga que no necesita.
Herramientas → Salud del sitio avisa cuando el volumen de opciones con carga automática es excesivo. Con acceso a la base de datos, también puedes ver qué opciones ocupan más:
SELECT option_name, LENGTH(option_value) AS bytes
FROM wp_options
WHERE autoload IN ('yes', 'on', 'auto-on', 'auto')
ORDER BY bytes DESC
LIMIT 20;
El nombre de la opción suele indicar a qué plugin pertenece. Antes de borrar nada, haz un respaldo de la base de datos y confirma que ese plugin ya no está instalado.
Revisa las tareas programadas
WordPress ejecuta sus tareas programadas (WP-Cron) aprovechando las visitas: si hay tareas pendientes, una petición de un visitante las dispara. En sitios con poco tráfico las tareas se retrasan; en sitios con mucho tráfico o muchas tareas, pueden ralentizar visitas reales.
En tiendas WooCommerce, revisa además WooCommerce → Estado → Acciones programadas. Miles de acciones pendientes o fallidas, como sincronizaciones o correos atascados, son una señal de que algo se repite sin terminar. Una práctica habitual es desactivar el disparo por visitas con define( 'DISABLE_WP_CRON', true ); y programar un cron real del servidor, siempre que el hosting lo permita.
Comprueba el entorno del servidor
Algunos factores no dependen de WordPress:
- Versión de PHP. Las versiones recientes de PHP son notablemente más rápidas que las antiguas. Revisa cuál usa tu sitio en Herramientas → Salud del sitio → Información → Servidor y confirma la compatibilidad de tus plugins antes de cambiarla.
- Caché de objetos persistente. En sitios con mucha lógica, como tiendas o membresías, Redis o Memcached evitan repetir las mismas consultas en cada petición. Muchos hostings los ofrecen, pero hay que activarlos.
- Recursos del plan. Un plan compartido con límites de CPU estrictos puede ser suficiente para un sitio informativo y quedarse corto para una tienda con cientos de pedidos.
Y entonces, ¿la caché?
La caché de página sigue siendo útil, pero como última capa, no como diagnóstico. Una vez que el servidor responde rápido sin caché, la caché hace que responda todavía más rápido para los visitantes anónimos. Usa un solo plugin de caché, no varios a la vez, y comprueba que respeta el carrito, el checkout y las sesiones iniciadas.
Cuándo conviene una revisión técnica
Si el TTFB es alto y no encuentras un plugin responsable, si la lentitud aparece solo en momentos concretos o si el escritorio de una tienda se vuelve inutilizable, hace falta revisar consultas, registros del servidor y tareas en segundo plano con más detalle.
En nuestro soporte WordPress medimos antes de tocar nada: localizamos el cuello de botella, te explicamos qué lo causa y te confirmamos el alcance y el costo antes de intervenir.
