Depurar WordPress te permite diagnosticar correctamente el problema y encontrar antes la solución.

Pero enfrentarse al código fuente de WordPress puede intimidar, sobre todo por primera vez.

Es lo mismo que nadar en el mar, yo me siento mas tranquilo si llevo mis gafas de bucear y puedo ver debajo del agua.

Activar el modo depuración en WordPress puede tener un efecto parecido, como sabes lo que está pasando tienes mas seguridad en lo que estas haciendo.

No te puedo prestar mis gafas para nadar en el mar, pero si puedo compartir la configuración que utilizo normalmente para desarrollar con WordPress.

Configurar el fichero wp-config.php

Lo primero es localizar el fichero wp-config.php en tu instalación local de WordPress para desarrollo.

wp-config.php Fichero WordPress

Lo puedes abrir con el editor de texto que prefieras.

Y una vez abierto debes buscar la siguiente linea:

// Enable WP_DEBUG mode
define( 'WP_DEBUG', true );

Lo primero es cambiar el valor de false a true para poder activar el modo depuración de WordPress.

Con esto lo que conseguimos es visualizar todas las advertencias y mensajes de error que PHP genera.

Fichero de registro de errores en WordPress

Como complemento activamos la escritura en el fichero de log, que se puede encontrar en la carpeta /wp-content de tu instalación.

// Enable Debug logging to the /wp-content/debug.log file
define( 'WP_DEBUG_LOG', true );

Esto te permite revisar cómodamente los mensajes de error en el fichero.

Y te permite escribir mensajes personalizados en el fichero utilizando la función , lo que me parece muy interesante.

Si sigues leyendo encontraras una versión mejorada que utiliza esta función y que te va a resultar muy útil.

Mostrar los errores en pantalla

Los mensajes de error por pantalla no siempre se leen bien, y crean confusión. Yo prefiero revisar directamente el fichero de log.

Si has activado la lectura del fichero de log te puede interesar no mostrar los errores por pantalla.

// Disable display of errors and warnings
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Así tienes todos los mensajes de error y depuración en un mismo sitio.

Visualizar la versión extendida de los scripts en depuración

Si estas trabajando con los ficheros css o javascript de WordPress, es mas fácil seguir la versión extendida que la versión mini.

// Use dev versions of core JS and CSS files (only needed if you are modifying these core files)
define( 'SCRIPT_DEBUG', true );

Con esta configuración forzamos a cargar la versión de depuración en lugar de la versión reducida de producción.

Sencillo ¿verdad? pues aún se puede mejorar.

Utiliza tu propia función para enviar datos al log de depuración

Con esta función cortesía del Señor Miller podemos volcar en el log tipos complejos de datos, como por ejemplo un array.

/*
* Custom Write to the log
*/
if (!function_exists('write_log')) {
function write_log ( $log )  {
if ( true === WP_DEBUG ) {
if ( is_array( $log ) || is_object( $log ) ) {
error_log( print_r( $log, true ) );
} else {
error_log( $log );
}
}
}
}

Simplemente añadimos la llamada a la función en el código que necesitamos depurar, como por ejemplo esta:

write_log( $item );

Buscamos el el fichero de log, y como se ve, nos ha volcado el contenido del $item del array que le hemos pasado.

Debug Log Fichero WordPress

Ya ves, puedes depurar WordPress y verificar que los datos llegan correctamente a tus funciones en dos patadas.

Sólo tienes añadir el código al final del fichero functions.php de tu plantilla (theme).

Functions Php Fichero WordPress

O utilizar este plugin que puedes descargar en el siguiente enlace:

Write Log Plugin (5 descargas)

Importante, una vez has terminado el desarrollo, hay que hacer limpieza del código, busca y elimina todas las llamadas a la función.

Si desactivas la función y mantienes alguna llamada perdida puede provocar errores.

Developer un plugin para depurar WordPress

Y para terminar Developer, un plugin que es como una navaja multiusos. Es como varios plugins dentro de uno.

Developer WordPress Plugin

No es necesario activar todas las opciones para utilizar el plugin. Yo por ejemplo me apaño con estas dos la mayor parte del tiempo:

Developer Configuracion WordPress Plugin

Puedes acceder a los mensajes de error desde la barra de administración, te muestra un aviso para indicar que algo ha ido mal, y entonces puedes ir a revisar el mensaje en cuestión.

Con este plugin en combinación con el fichero de log se te escaparán pocos errores ¡Palabra!

Conclusiones

  • No olvides deshacer la configuración para depurar WordPress una vez termines el desarrollo.
  • O mejor aún, separa tu entorno de desarrollo de tu entorno de producción.
  • Una vez puedes ver que está pasando en el interior de tu instalación, y googlear los errores desarrollar con WordPress da menos miedo.

 

¡Hasta Pronto!

 

Lux Your business &

Love Your Website!