Contents
Cómo configurar registros de errores en WordPress
En entornos de desarrollo y producción, llevar un control exhaustivo de los errores de PHP y de WordPress es esencial para identificar problemas, optimizar el rendimiento y garantizar la seguridad. En este artículo exploraremos de forma detallada las técnicas y herramientas para habilitar, personalizar y mantener registros de errores (error logs) en tu sitio WordPress.
1. ¿Por qué es importante registrar errores
- Detección temprana: Identifica avisos, advertencias y errores fatales antes de que afecten a usuarios.
- Seguridad: Evita exposición de rutas o datos sensibles durante fallos.
- Mantenimiento eficiente: Permite auditar problemas recurrentes y documentar soluciones.
- Rendimiento: Revela cuellos de botella en consultas o inclusiones de ficheros.
2. Requisitos y permisos
Antes de comenzar, asegúrate de contar con:
- Acceso FTP/SFTP o panel de hosting con gestor de archivos.
- Permisos de escritura en wp-content (normalmente 755 para carpetas, 644 para archivos).
- Versión de PHP 7.4 o superior.
- Copias de seguridad recientes de tu sitio y base de datos.
3. Configuración básica en wp-config.php
El núcleo de la depuración de WordPress descansa en algunas constantes definidas en el fichero wp-config.php
. Edita este archivo y añade o modifica las siguientes líneas justo antes de / ¡Eso es todo, deja de editar! /
:
define(WP_DEBUG, true) define(WP_DEBUG_LOG, true) define(WP_DEBUG_DISPLAY, false) define(SCRIPT_DEBUG, false)
- WP_DEBUG: Activa el modo depuración general (true / false).
- WP_DEBUG_LOG: Guarda los errores en
wp-content/debug.log
. - WP_DEBUG_DISPLAY: Controla si muestran en pantalla (false en producción).
- SCRIPT_DEBUG: Fuerza uso de versiones no minimizadas de scripts y estilos.
3.1 Comparativa de constantes de depuración
Constante | Descripción | Valor recomendado |
---|---|---|
WP_DEBUG | Activa/desactiva el modo de depuración. | true (desarrollo), false (producción) |
WP_DEBUG_LOG | Genera el archivo debug.log . |
true |
WP_DEBUG_DISPLAY | Muestra errores en la pantalla. | false (producción) |
SCRIPT_DEBUG | Usa scripts no minimizados. | false |
4. Configuración de PHP
Para capturar errores de PHP (fatsales, notices o advertencias) define en php.ini
:
error_reporting = E_ALL ~E_DEPRECATED ~E_STRICT display_errors = Off log_errors = On error_log = /ruta/a/tu/logs/php-error.log
- error_reporting: Niveles de error a capturar (
E_ALL
abarca la mayoría). - display_errors: Nunca mostrar en producción.
- log_errors: Activar registro en fichero.
- error_log: Ruta absoluta al archivo de logs.
Tras modificar, reinicia tu servidor web (Apache, Nginx, etc.) para aplicar cambios.
5. Personalizar ubicación del debug.log
Si no quieres que los registros se mezclen con el core, puedes redirigir WP_DEBUG_LOG
a otro fichero:
if (defined(WP_DEBUG) WP_DEBUG) { ini_set(log_errors, On) ini_set(error_log, dirname(__FILE__) . /logs/mi-debug.log) define(WP_DEBUG_LOG, dirname(__FILE__) . /logs/mi-debug.log) }
6. Consultar y analizar logs
- FTP/SFTP: Descarga y revisa
wp-content/debug.log
o tu php-error.log. - SSH/CLI: Usa comandos tipo
tail -f /ruta/a/log
. - WP-CLI:
wp log tail --path=/var/www/html
(requiere extensión).
7. Plugins recomendados
- Query Monitor: muestra errores PHP, consultas lentas y hooks (enlace oficial).
- Error Log Monitor: muestra últimas entradas de
debug.log
en el panel de administración. - WP Mail SMTP Log Emails: envía alertas por correo ante errores críticos.
8. Rotación y mantenimiento de logs
Para evitar sobrecarga de disco, programa rotación y limpieza:
- Linux/Unix: crea una tarea con
/etc/logrotate.d/wordpress
:
/ruta/a/wordpress/wp-content/debug.log { daily rotate 7 missingok notifempty compress copytruncate }
9. Buenas prácticas
- No exponer errores al usuario final (usa
WP_DEBUG_DISPLAY = false
). - Revisa periódicamente los logs y archívalos.
- Documenta las soluciones de errores comunes para tu equipo.
- Utiliza entornos separados para desarrollo, staging y producción.
10. Recursos y referencias
- Debugging in WordPress (WordPress.org).
- Theme Plugin Debugging (WordPress Developer Handbook).
- PHP error handling and logging (php.net).
Implementar un sistema de registros de errores robusto en WordPress te ahorrará tiempo y dolores de cabeza. Sigue estos pasos y adapta la configuración a las necesidades específicas de tu proyecto para mantener un sitio estable, rápido y seguro.
|
Acepto donaciones de BAT's mediante el navegador Brave 🙂 |