Depurando WordPress en Mac

Console El otro día descubrí una cosa muy sencilla pero muy útil: usar la consola de MacOSX para depurar WordPress en tiempo real. Así no hace falta echar mano de ningún plugin o instalar un inspector extra, …

Configurando WordPress

Lo primero que hay que hacer es decirle a wordpress que active el debug y que vaya escribiendo todo en un .log, lo podemos configurar desde wp-config.php:

// debugging settings
@ini_set('display_errors', 0);
define('WP_DEBUG', true);
if ( WP_DEBUG ) {
	define('WP_DEBUG_DISPLAY', false);
	define('WP_DEBUG_LOG', true);
}

Ésto lo que hará es depurar los procesos pero no mostrarlos en pantalla sino que los irá almacenando en wp-content/debug.log (no hace falta decir que sin permisos no se podrá crear el archivo).

Usando la consola

La Consola de MacOSX es de esas aplicaciones olvidadas en la carpeta de utilidades que casi nadie usa pero que para un desarrollador puede ser muy útil.

En este caso yo lo que hago es hacer doble-click sobre el archivo (debug.log) y automáticamente el sistema (Lion) ya me lo abre con la Consola de depuración, sino abre el archivo con la aplicación.

Verás que la consola te va mostrando varios procesos dependiendo de las aplicaciones que tengas instaladas, pero te saldrá en la navegación lateral el archivo en cuestión..

Ahora mientras vas trabajando te van saliendo en pantalla los errores, bugs, traces, etc. Lo bueno es que dándole a Borrar Pantalla limpias la ventana de procesos sin tocar el .log que sigue intacto en su sitio.

Una función para tirar traces

Yo uso una función (_debug) para depurar en ciertos puntos:

// debug function
if ( !function_exists('_debug') ):
function _debug( $message ) {

	 if ( WP_DEBUG === true ):

		 if ( is_array( $message ) || is_object( $message ) ) {
			 error_log( print_r( $message, true ) );
		 } else {
			 error_log( $message );
		 }

	 endif;
 }
endif;
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s