Si has llegado a este artículo, supongo que te has encontrado con un error en tu sitio WordPress. O que eres una persona que realiza regularmente el mantenimiento y esperas encontrarse en algún momento con un error. En cualquier caso, quiero recordarte que escribir código y escribir errores van de la mano. Incluso los/as mejores desarrolladores/as cometen errores. Para que no te desesperes por ello, te he escrito esta guía sobre el modo de depuración de WordPress, el WordPress Debug Modus. Esta es una herramienta muy útil para descubrir y entender los errores WordPress.
El primer paso para depurar tu código
Siéntate, respira profundamente y exhala, y comprende que todos/as los/as desarrolladores/as han escrito código con errores en algún momento. Cada vez que escribes código con errores, aprendes algo - y si aprendes algo, seguirás desarrollando y mejorando tus habilidades.
Aunque puede parecer que un fallo está ahí para sacarte de quicio, por suerte esto es relativamente improbable 😉 Lo bueno es que: a menos que estés tratando con la tecnología más avanzada, hay muchas posibilidades de que alguien más se haya encontrado ya con el mismo fallo.
¿Qué es el "debugging"?
Si no estás familiarizado/a con el término "debugging", este literalmente procede del término anglosajón "de - bugging". En lenguaje informático, un error en el código se denomina "bug". Así que depurar tu código significa: eliminar los errores de tu código. Aunque a la gente le gusta suponer que los fallos son causados por su propio personal o por actualizaciones de software mal pensadas, la verdad es que muchos fallos tienen su propia letra, y es mejor aceptarlos desde el principio.
Por qué el debugging para PHP parece más complicado que el de JavaScript
Tal vez estés acostumbrado/a a depurar en otro lenguaje, por ejemplo JavaScript. Un poco confuso es que JavaScript solo se ejecuta después de renderizar tu sitio web, al menos este es el estándar en la web y la razón por la que se inserta tu archivo .js al final del documento HTML. Esto significa que tu sitio web puede seguir mostrándose aunque haya errores JavaScript. Si no te das cuenta de esto o no compruebas el registro de tu consola, puede que ni siquiera sepas que se ha producido un error.
Sin embargo, PHP es un lenguaje del lado del servidor y se utiliza para construir tu sitio web (aunque puede hacer mucho más que eso). Por lo tanto, si hay un error en tu código PHP, puede que no se cargue tu web y los/as visitantes no vean ningún contenido. Así, los errores de PHP suelen ser más evidentes.
Depuración en WordPress con WP-Debug
¿Qué es el WordPress Debug Mode?
Cuando el WP Debug Modus (a veces llamado wp-debugger o wp-debug) está habilitado, te mostrará los errores, sugerencias y advertencias reportadas por el sistema de WordPress. Por defecto, el wp-debugger está desactivado. La constante PHP wp_debug es la variable global que indica el estado del WordPress Debug Modus mediante un booleano, es decir, si está activado o desactivado.
¿Por qué deberías utilizar el WordPress Debug Mode?
Porque WordPress utiliza algunos componentes básicos diferentes:
Frontend - HTML / CSS
Backend - PHP / Base de datos
Plugins - Aplicaciones PHP creadas por terceros
Por lo tanto, puede ser bastante difícil averiguar qué ha causado un problema en tu sitio web. El wp-debugger es una herramienta que permite ver o registrar los errores.
Antes de empezar a depurar, ¡haz una copia de seguridad!
Hay un viejo dicho: "Más vale prevenir que curar". Esto significa que es mejor no dejar que surja un problema en primer lugar. Para ti, esto significa: ¡datos seguros de tu !
Un trabajo de mantenimiento de 30 minutos puede convertirse rápidamente en una pesadilla de 5 horas solo porque no se hizo una copia de seguridad antes de que alguien se metiera con los archivos internos.
Afortunadamente, si alojas tu sitio web en Raidboxes, la copia de seguridad se crea automáticamente. Solamente tienes que ir a tu dashboard, hacer clic en la pestaña "Copias de seguridad" y ver todas tus copias de seguridad diarias.

Si quieres hacer cambios y necesitas crear una copia de seguridad manual, haz clic en el botón "Crear copia de seguridad manual" y dale un nombre a la copia de seguridad. Consejo: Elige un nombre que tenga sentido para que puedas reconocer la copia de seguridad más adelante. ¡Ahora puedes jugar con tus todo lo que quieras! Si algo va mal, simplemente restaura la copia de seguridad de tu .

Activa el WordPress Debug Mode con Raidboxes
En dashboard de Raidboxes puedes activar el wp-debugger en la configuración de tu Box con un solo clic:

Si haces clic en WordPress Debug Logsdespués de activar el WordPress Debug Mode, podrás ver en el Live Log qué errores arroja tu sitio web WordPress. Puedes acceder al registro de depuración propiamente dicho a través de la configuración del elemento WP Debug (ver captura de pantalla) o a través de lavista general de la Box. También puedes acceder a los archivos de registro de depuración de WP a través de FTP: tus archivos de registro se almacenan en el /wp-content/ en el archivo debug.log.

Encontrarás más información sobre el análisis de errores de tu sitio web WordPress en Raidboxes en nuestro centro de ayuda.
¿Necesitas wp-config.php para la depuración?
En Raidboxes puedes activar el WordPress Debug Modus con un solo clic en tu dashboard. El wp-config.php es de solo lectura por razones de seguridad. Sin embargo, en la configuración de tu Box en WordPress >wp-config. php podrás almacenar entradas especiales si es necesario.
Muy importante: utiliza solo esta función si estás seguro/a de lo que hacen las entradas. Editar el wp-config.php puede llevar a un sitio web defectuoso. Por lo tanto, antes de añadir una entrada, deberías comprobar si ya creaste una copia de seguridad.
En la siguiente sección explicamos cómo habilitar el modo de depuración (WP Debug Mode) a través de wp-config.php cuando se desarrolla localmente.
Activar WordPress Debug localmente
En tu desarrollo local podrás habilitar wp-debug editando el archivo wp-config.php en el directorio raíz de tu carpeta de WordPress y añadiendo el siguiente código:
// Dies aktiviert das Debugging.
define( 'WP_DEBUG', true );
También puedes ver si esta declaración ya ha sido añadida, pero el valor es "false". Si es el caso, simplemente cámbialo a "true".
// Dies deaktiviert das Debugging.
define( 'WP_DEBUG', false );


Llegados a este punto, me gustaría insistir una vez más en lo importante que es una copia de seguridad. Ahora es un buen momento para comprobarlo de nuevo.
El WordPress Debug Mode ya está activo, ¿y ahora?
Ahora que el wp-debugger está activado, los errores se muestran directamente en la ventana del navegador (si WP_DEBUG_DISPLAY está en modo "true"). Esto puede convertirse tanto en una maldición como en una bendición. Por un lado, puedes ver los errores, pero por otro lado, tus usuarios/as también pueden verlos, lo que no es ideal. Para dar un ejemplo, he añadido una pequeña función desconocida al pie de página del WordPress theme estándar "Twenty Twenty-One".
Antes de activar wp-debug:

Después de activar wp-debug:

Probablemente no quieras que tus visitantes vean esto, ¿verdad? El mensaje de error no solo perturba el diseño, sino que incluso podría revelar información sensible. Por ejemplo, antes de hacer algunos cambios en la salida, salía mi nombre de usuario y con esta información cualquier hacker podría lanzar un ataque.
¿Se registran tus errores?
Cómo activar el WordPress Debug Mode y evitar que aparezcan errores en el código HTML
Afortunadamente, existe una solución a este problema en WordPress. Añade el siguiente código en tu wp-config.php:
define( 'WP_DEBUG_DISPLAY', false );
Esto evita que aparezcan errores en tu código HTML y ahorra a tus usuarios/as la pesadilla que podrías haber causado. La última pieza del rompecabezas es cómo comprobar los errores sin publicarlos. ¡Bienvenido/a al registro de errores!
Activar el registro de errores en WordPress
En el archivo wp-config.php, deberías activar el registro de errores de WordPress. Esto creará un archivo .log con los registros y detalles de los errores ocurridos en tu sitio web.
define( 'WP_DEBUG_LOG', true );
Por lo general, puedes encontrar el archivo de registro en la carpeta wp-content de tu sitio web WordPress, a menos que tengas una ruta de archivo válida para este registro como se especifica a continuación:
define( 'WP_DEBUG_LOG', '/tmp/wp-errors.log' );
Sin embargo, mi registro de errores se escribió en el directorio raíz de WordPress. Por lo tanto, si no encuentras tu registro de errores en la carpeta wp-content, deberías buscar en otra parte:

Revisión de un registro de errores
Los registros de errores te dan indicaciones bastante claras de lo que ha ido mal. Pero que algo esté claro no significa que lo entiendas, así que vamos a desglosarlo.

- Hora del error: [12-Abr-2021 20:32:47 UTC]
- Tipo de error: Error Fatal PHP
- Causa del error: Uncaught Error: Call to undefined function writeMsg() in
- Dónde se ha producido el error: /home/XXXXXXX/DEVELOPMENT/wp/wp-content/themes/twentytwentyone/footer.php:73
Por si te preguntas a qué se debe el error que he puesto, he definido un método incorrecto llamado writeMsg() en el archivo footer.php que provoca un error.
¡No olvides desactivar!
¿Es el registro de errores WordPress demasiado grande?
Los registros de errores pueden crecer con el tiempo si no se controlan. Recuerda que no solo se registran los errores, sino también las advertencias y los consejos. Cuando hay nuevas versiones de PHP, ciertos métodos pueden quedar obsoletos o incluso los plugins pueden dejar de ser compatibles. En ese caso, se generan más errores.
Normalmente, un registro de errores solo debería tener un tamaño de unos pocos kB, pero incluso así es tedioso buscar en este. En los peores casos, los errores se registran en un archivo que ya tiene varios MB de tamaño y contiene miles de líneas de texto. Además de ser más confuso, esto conduce a tiempos de reacción más lentos del archivo de registro y puede ralentizar enormemente tu proceso de resolución de problemas debido a los tiempos de espera al cargar el registro. ¿Qué puedes hacer entonces?
Descarga el documento para archivarlo y luego elimínalo.
Si los registros de errores WordPress han sido activados en wp-config.php y no se encuentra ningún archivo error.log, WordPress crea un archivo completamente nuevo y lo llena con los errores actuales.
Conclusión
La depuración de código hace que el desarrollo sea un reto y una recompensa. Porque los errores te obligan a ampliar tus conocimientos, a desarrollar una actitud positiva y a pensar de forma diferente. Si tienes alguna pregunta o dificultad con la depuración de tu sitio web WordPress, no dudes en dejar un comentario o ponte en contacto con nosotros en el chat de soporte. ¡Diviértete depurando!
¿Tienes alguna otra pregunta?
Si tienes dudas acerca del WordPress Debug Mode, no dudes en utilizar la función de comentarios. ¿Te interesan los temas de actualidad en torno a WordPress, el diseño web y los negocios en línea? Entonces sigue a Raidboxes en Twitter y Facebook, LinkedIn o a través de nuestra newsletter.