Soy bastante nuevo en la creación de complementos y estaba teniendo dificultades para depurar.
Usé mucho eco y es descuidado y feo.
Estoy seguro de que hay una mejor manera de hacer esto, ¿tal vez un IDE con un depurador en el que pueda ejecutar todo el sitio, incluido el complemento?
plugins
debug
plugin-development
Sruly
fuente
fuente
WP_DEBUG
en falso, como recomienda John, se obtiene una idea bastante buena de lo que está mal, si acaso, dentro de sus scripts. Luego puede editar en Dreamweaver, presionar Ctrl + S y luego F5 en el navegador para ver de inmediato los cambios.Respuestas:
Entra en wp-config.php y cambia
define('WP_DEBUG', false);
adefine('WP_DEBUG', true);
. Además, instale el complemento de avisos obsoletos de registro de Andrew Nacin .fuente
Si se imprimen errores, entonces x-debug es una brillante extensión de PHP que agrega retrocesos modernos a PHP.
Si está tratando de averiguar qué está sucediendo donde no hay errores, mi enfoque favorito es definir una función que registre su salida en un archivo. Entonces hago plog ($ variable) y eso aparece en el archivo de registro que luego puedo examinar. Esto es especialmente útil cuando intenta resolver lo que sucedió antes de que se llame a header () u otras situaciones en las que no puede imprimir en STDOUT.
fuente
Use xdebug + NetBeans IDE. Cuando está completamente configurado, lo cual es fácil de hacer, puede establecer puntos de interrupción en su complemento y observar variables en los puntos de interrupción. Creo que es la mejor manera de depurar complementos o cualquier aplicación php para el caso.
fuente
Yo depuro a la antigua usanza,
error_log()
ing yvar_dump
ing. Creo que esa es la forma más eficiente para mí, tengo un par de funciones de contenedor para manejar diferentes tipos de datos, ya queerror_log
incorporar matrices y objetos puede ser una molestia. Además, el usoprint_r()
de puede ser difícil de leer cuando no está en una<pre>
. Tengotj_log()
para el registro de errores ytj()
para mostrar la salida (que básicamente muestra cualquier tipo de datos en un presentable mannor:Entonces solo hago:
tj( $current_user );
o lo que sea.fuente
Después de jugar con varios IDE, me instalé en el viejo Notepad ++ con un esquema de color de resaltado de sintaxis ultra personalizado.
Tengo una macro configurada de tal manera que cuando presiono Shift-Ctrl-X, el siguiente código se muestra donde está mi cursor:
Es simple, pero generalmente puedo cazar el 90% de mis errores con esta macro más WP_DEBUG habilitado.
fuente
print_r($var, true)
lugar devar_dump
.Escribí una pequeña clase para hacer un archivo de registro, es muy útil cuando estás depurando llamadas ajax.
http://github.com/hunk/Magic-Fields/blob/master/tools/debug.php
Solo necesitas hacer algo como:
Debug :: log ("Este es un mensaje de depuración");
Cuando se ejecute esa línea, se agregará un mensaje en el archivo de registro y luego podrá usar el comando de cola (si está utilizando algún sistema operativo de estilo de Unix)
tail -f mylogfile.log
Si puede pasar a esta función una matriz o un objeto también.
tenga en cuenta que necesita cambiar la línea 20 para una ruta donde desea guardar su archivo de registro
fuente
Uso Aptane IDE en Linux y UltraEdit en Windows, y este también tiene un analizador PHP. Además, veo todas las sugerencias de xDebug con la constante
WP_DEBUG
definida enwp-config.php
.Vea también mi publicación sobre este tema y siéntase libre de comentar y dar su opinión sobre sus herramientas de desarrollo.
fuente
Te recomiendo que compruebes FirePHP . Puede enviar información de depuración a Firebug de Firefox a través de encabezados HTTP, lo que generalmente proporciona una salida de depuración más limpia.
fuente
No está mal también: Eclipse Está cerca de PhpStorm + gratis.
fuente
Hay dos IDEs que puedo recomendar y los he usado ampliamente: PhpED (solo Windows) y PhpStorm + XDEBUG (Mac, Windows y Linux). Ahora estoy en Mac, así que solo puedo usar el último.
¡Ambos ROCK! La buena noticia es que PhpStorm es de $ 49 antes de septiembre de 2010 y solo $ 99 después de eso. Si estuviera en Windows y tuviera que elegir de nuevo, no estoy seguro de cuál elegiría.
Francamente, no puedo evitar sentir que cualquier desarrollador de complementos que no use una de estas dos herramientas está severamente discapacitado, especialmente si son relativamente nuevos en el desarrollo de complementos de WordPress.
fuente
Krumo: la clase de depuración de php con estilo
Otra cosa realmente agradable es la clase de php "krumo". Se implementa en ½ minuto y ofrece una manera fácil de depurar todo tipo de variables:
Además , ayuda con el rastreo, muestra las clases cargadas o los archivos incluidos y todo lo que se necesite.
Además , ¡es GRATIS!
Descargar
Krumo @sourceforge
fuente
Utilizo un complemento de $ 13 llamado LogPress que puedes comprar en ThemeForest y es un absoluto envío de Dios. Puede depurar todo lo relacionado con sus complementos y sitio. Admite el registro de la consola Firebug y mucho más. No puedo vivir sin él, eso es lo mucho que uso este complemento.
Este complemento es probablemente el mejor dinero que he gastado y me ha ahorrado innumerables horas en el desarrollo de mi complemento de Wordpress.
fuente
Estoy usando phpED y xdebug, pero para mí (y parece para alguien más) ¡es imposible depurar los complementos o el archivo del tema! ¡El depurador solo se detiene en los puntos de interrupción que se encuentran en los archivos "principales" principales u originales! alguien me puede ayudar?
fuente
En primer lugar, agrego
define('WP_DEBUG', false);
al archivo wp-config.php (como ha dicho la mayoría de la gente) a mi instalación local, que es una copia reciente de un sitio de producción relevante (tanto archivos como datos). Esto hace que las cosas sean rápidas, seguras, separadas pero reflejan bien al menos un lugar en el que realmente se usará el complemento.También agrego el complemento de la barra de depuración junto con algunos de los complementos de la barra de depuración (transitorios, por ejemplo), según corresponda a sus complementos.
También utilizo el complemento Firebug para Firefox, que es excelente para ayudar a rastrear problemas html, css y JavaScript, y también para analizar la rareza del diseño.
Codifico usando UltraEdit, que he usado durante más de 15 años para una gran cantidad de codificación (php a través de SQL) tanto en el trabajo como en el hogar, por lo que esto funciona bien para mí, pero tal vez no tenga suficiente para calificar como IDE para mucha gente Tiene características de resaltado de sintaxis, finalización automática y diseño de código y un montón de herramientas de acceso directo html y css que pueden ayudar a evitar errores tipográficos y similares. Principalmente, esto me trae familiaridad, que es un aspecto importante que a menudo se pasa por alto en la carrera hacia lo nuevo. La memoria muscular ayuda a la repetibilidad incluso en la codificación.
Y, por supuesto, generalmente tengo alguna página apropiada del códice abierta en otra pestaña en un ejemplar adecuado.
Todos estos ayudan de diferentes maneras para resaltar los errores de codificación, análisis, funcional y de diseño y no interfieren mucho en la forma en que codifico o si nada está mal. La mayoría puede ignorarse o desactivarse por un momento si está experimentando o trabajando en algo que volverá a visitar más adelante.
Ah, y no hay nada de malo con un echo bien posicionado o print_r para verificar algo en una tecla (siempre que los elimine cuando haya terminado).
fuente
Consulte Query Monitor combinado con Query Monitor Extend para una depuración completa de WordPress (errores / avisos / estrictos / advertencias de PHP, consultas de bases de datos, rutas, constantes, solicitudes HTTP, transitorios, variables de sesión, volcados var).
También consulte Todos los complementos de Meta y Guardar qué para obtener información específica sobre las publicaciones.
fuente
PHPStorm and Xdebug es un juego que me está cambiando para el desarrollo de WordPress. Muy recomendable ahora. Especialmente con sus herramientas de depuración en línea.
fuente