Configurar wp-config.php en WordPress: las directivas que aceleran y protegen tu tienda
Hola, amigos de Piensa para Crear. 👋
Si tienes una tienda online en WordPress, el archivo wp-config.php es uno de los archivos más importantes de tu instalación. Ahí se definen cosas como la conexión a la base de datos, el límite de memoria, la caché y hasta la URL de tu sitio.
Y aunque WordPress trae una configuración por defecto funcional, hay directivas que pueden marcar una diferencia enorme en rendimiento, seguridad y estabilidad de tu tienda.
En este post te explico cuáles son las más útiles, qué hace cada una y cuáles evitar (porque sí, algunas pueden romper tu sitio).
🧠 ¿Qué es wp-config.php y por qué importa?
El archivo wp-config.php es el archivo de configuración principal de WordPress. Se ubica en la raíz de tu instalación y contiene:
Las credenciales de conexión a la base de datos.
Las claves de seguridad (salts).
La configuración de depuración (debug).
Directivas personalizadas que modifican el comportamiento de WordPress.
Regla de oro: Antes de editar este archivo, haz un backup completo de tu sitio (archivos y base de datos). Un error de sintaxis aquí puede tumbar todo tu WordPress.
⚡ Directivas para mejorar el rendimiento
1. WP_MEMORY_LIMIT — El límite de memoria (la más importante)
Esta directiva define cuánta memoria puede usar WordPress. Es la causa #1 de errores en tiendas WooCommerce.
define('WP_MEMORY_LIMIT', '256M');
¿Qué valor usar?
256M es el mínimo recomendado para tiendas activas.
512M si usas Elementor, constructores de páginas o muchos plugins.
⚠️ Ojo con pasarte: Si pones un valor como 256000M (como vi en un ejemplo), el servidor puede no tener esa RAM disponible y todo el sitio se vuelve lento. Usa valores realistas: 256M o 512M.
Nota: WP_MEMORY_LIMIT solo aplica al frontend. Si necesitas más memoria en el admin, define también WP_MAX_MEMORY_LIMIT.
2. WP_CACHE — Activar la caché de WordPress
define('WP_CACHE', true);
Activa el sistema de caché de WordPress. Importante: esta directiva no genera caché por sí sola. Solo le dice a WordPress que un plugin de caché (como WP Super Cache, W3 Total Cache o WP Rocket) puede usarla.
Si no tienes un plugin de caché instalado, esta línea no hace nada.
3. COMPRESS_CSS y COMPRESS_SCRIPTS — Compresión de archivos
define('COMPRESS_CSS', true); define('COMPRESS_SCRIPTS', true);
Estas directivas indican a WordPress que comprima archivos CSS y JavaScript antes de enviarlos al navegador.
⚠️ Advertencia importante: Estas constantes son legado de versiones antiguas de WordPress. En versiones modernas ya no tienen efecto porque WordPress dejó de usarlas. Además, pueden entrar en conflicto con plugins de optimización como Autoptimize o WP Rocket.
Mi recomendación: No las uses. Deja que plugins especializados se encarguen de eso.
4. CONCATENATE_SCRIPTS — Combinar archivos JavaScript
define('CONCATENATE_SCRIPTS', true);
Combina todos los archivos JS del admin de WordPress en uno solo para reducir peticiones HTTP.
⚠️ Igual que las anteriores: Esta directiva es heredada y puede causar problemas con plugins modernos. Úsala solo si sabes lo que haces, y mejor déjasela a plugins de optimización.
🗑️ Directivas para gestionar la papelera y el guardado
5. EMPTY_TRASH_DAYS — Días antes de vaciar la papelera
define('EMPTY_TRASH_DAYS', 30);
Define cuántos días se conservan los elementos en la papelera antes de eliminarse permanentemente. Por defecto son 30 días. Si quieres reducir el espacio en la base de datos, puedes bajarlo a 7 días.
⚠️ Nota: Si defines EMPTY_TRASH_DAYS a 0, desactivas la papelera por completo y los elementos se eliminan de inmediato. Úsalo con cuidado.
6. AUTOSAVE_INTERVAL — Frecuencia de autoguardado
define('AUTOSAVE_INTERVAL', 300);
Define cada cuántos segundos WordPress autoguarda las entradas y páginas mientras las editas. Por defecto son 60 segundos.
Valor recomendado: 300 segundos (5 minutos) si tu servidor tiene recursos limitados. Menos frecuente = menos carga.
⚠️ Ojo: Si lo pones muy alto (por ejemplo, 600 segundos), podrías perder más trabajo si se cae el navegador.
🔒 Directivas de seguridad
7. ALLOW_UNFILTERED_UPLOADS — Permitir subir archivos sin filtrar
define('ALLOW_UNFILTERED_UPLOADS', true);
⚠️ ¡CUIDADO! Esta directiva permite subir archivos que WordPress normalmente bloquea por seguridad (SVG con scripts, archivos con extensiones peligrosas, etc.).
Mi recomendación: NO la actives a menos que sea absolutamente necesario (por ejemplo, para un plugin específico de subida de archivos SVG). Y si la activas, hazlo solo para administradores.
8. WP_ENVIRONMENT_TYPE — Entorno de ejecución
define('WP_ENVIRONMENT_TYPE', 'production');
Define el tipo de entorno donde corre tu WordPress. Valores válidos:
production(sitio en vivo)staging(entorno de pruebas)development(desarrollo local)local(local)
¿Para qué sirve? Algunos plugins y temas cambian su comportamiento según el entorno. Por ejemplo, desactivan funciones de depuración en producción o activan avisos en desarrollo.
Recomendación: En un sitio en vivo, define siempre production.
9. WP_DEBUG y sus variantes
Aunque no aparecen en tu lista, son importantes:
define('WP_DEBUG', false); define('WP_DEBUG_LOG', false); define('WP_DEBUG_DISPLAY', false);
En producción, todas deben estar en false. Si activas WP_DEBUG_DISPLAY en un sitio en vivo, los errores se muestran a tus visitantes y eso es un riesgo de seguridad.
🌐 Directivas para forzar URLs (útil en migraciones)
10. WP_HOME y WP_SITEURL — Forzar la URL del sitio
define('WP_HOME', 'https://tienda.estilopropiomx.com'); define('WP_SITEURL', 'https://tienda.estilopropiomx.com');
Estas directivas fijan la URL de tu sitio y sobrescriben lo que esté en la base de datos.
¿Cuándo usarlas?
Migraciones: cuando mueves tu sitio de un dominio a otro.
HTTPS: para forzar que todo el sitio use HTTPS.
Acceso temporal: si necesitas acceder a tu sitio con una URL distinta sin cambiar la base de datos.
⚠️ Advertencia: Una vez definidas, no podrás cambiarlas desde el panel de WordPress (Ajustes → Generales). Si necesitas cambiarlas, tendrás que editar el archivo.
⚠️ Directivas que NO deberías usar (o usar con cuidado)
De tu lista, estas son las que generan más problemas que beneficios:
| Directiva | Por qué evitarla |
|---|---|
COMPRESS_CSS | Legado, ya no tiene efecto, puede chocar con plugins |
COMPRESS_SCRIPTS | Igual que la anterior |
CONCATENATE_SCRIPTS | Puede romper el admin y choca con plugins modernos |
ALLOW_UNFILTERED_UPLOADS | Riesgo de seguridad alto |
POST_MAX_SIZE | No es una constante de WordPress. Es una directiva de PHP que se define en php.ini o .htaccess, no en wp-config.php. Definirla aquí no hace nada |
✅ Configuración recomendada para una tienda online
Si tienes una tienda en WooCommerce, esta es la configuración mínima que te recomiendo en wp-config.php:
// Memoria define('WP_MEMORY_LIMIT', '256M'); define('WP_MAX_MEMORY_LIMIT', '512M'); // Caché (con plugin de caché instalado) define('WP_CACHE', true); // Entorno define('WP_ENVIRONMENT_TYPE', 'production'); // Seguridad en producción define('WP_DEBUG', false); define('WP_DEBUG_LOG', false); define('WP_DEBUG_DISPLAY', false); define('DISALLOW_FILE_EDIT', true); // Autoguardado y papelera define('AUTOSAVE_INTERVAL', 300); define('EMPTY_TRASH_DAYS', 30); // URLs (solo si migraste o necesitas forzar HTTPS) // define('WP_HOME', 'https://tudominio.com'); // define('WP_SITEURL', 'https://tudominio.com');
Sobre DISALLOW_FILE_EDIT: esta directiva desactiva el editor de archivos del admin de WordPress. Es una medida de seguridad muy recomendable, porque evita que un atacante con acceso al admin pueda editar archivos del tema o plugins directamente.
🎯 Conclusión: menos es más
El wp-config.php es potente, pero no necesitas 20 directivas. Para una tienda WooCommerce que funcione bien, con estas bastan:
WP_MEMORY_LIMIT(la más crítica)WP_CACHE(si usas plugin de caché)WP_ENVIRONMENT_TYPEen productionWP_DEBUGen falseDISALLOW_FILE_EDITen trueAUTOSAVE_INTERVALajustado a tu servidor
Las directivas de compresión y concatenación de CSS/JS déjalas a plugins especializados como Autoptimize, WP Rocket o W3 Total Cache. Ellos lo hacen mejor y sin conflictos.
💬 ¿Necesitas ayuda para configurar tu wp-config.php o diagnosticar problemas de rendimiento en tu tienda?
En Piensa para Crear ofrecemos servicios de optimización, configuración de WordPress y solución de problemas.
Contáctanos aquí y hablemos.
❓ Preguntas frecuentes
¿Dónde está el archivo wp-config.php?
En la raíz de tu instalación de WordPress. Puedes acceder por FTP o desde el administrador de archivos de tu hosting.
¿Qué pasa si me equivoco al editar wp-config.php?
Puedes tumbar todo tu sitio con un error de sintaxis. Haz backup antes y usa un editor que valide PHP.
¿WP_MEMORY_LIMIT reemplaza a memory_limit del php.ini?
No. WP_MEMORY_LIMIT solo funciona si el servidor permite ese valor. Si el php.ini tiene un límite menor, prevalece el php.ini.
¿Puedo poner WP_MEMORY_LIMIT a 1G?
Puedes intentarlo, pero si el servidor no tiene esa RAM disponible, cada proceso PHP puede consumirla y dejar a MySQL sin recursos. Mejor 256M o 512M.
¿Para qué sirve WP_ENVIRONMENT_TYPE?
Para que plugins y temas sepan si están en producción, staging o desarrollo, y ajusten su comportamiento.
¿POST_MAX_SIZE se define en wp-config.php?
No. Es una directiva de PHP que se define en php.ini, .htaccess o .user.ini. En wp-config.php no tiene efecto.

Comentarios
Publicar un comentario