{"id":58075,"date":"2022-10-13T09:01:41","date_gmt":"2022-10-13T07:01:41","guid":{"rendered":"https:\/\/kinsta.com\/es\/?p=58075&#038;preview=true&#038;preview_id=58075"},"modified":"2025-12-16T19:46:26","modified_gmt":"2025-12-16T18:46:26","slug":"xdebug","status":"publish","type":"post","link":"https:\/\/kinsta.com\/es\/blog\/xdebug\/","title":{"rendered":"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress"},"content":{"rendered":"<p>Como puede atestiguar cualquier desarrollador, el c\u00f3digo nunca est\u00e1 listo para la producci\u00f3n despu\u00e9s del primer borrador. Una parte clave del proceso de desarrollo es la depuraci\u00f3n: eliminar o cambiar todas las partes de tu c\u00f3digo que no funcionan.<\/p>\n<p>La extensi\u00f3n Xdebug para PHP es una forma popular de erradicar y destruir todos los errores de tu c\u00f3digo.<\/p>\n<p>Uno de los grandes aspectos de Xdebug es su flexibilidad. Independientemente de tu marco o entorno de desarrollo preferido, podr\u00e1s encontrar una versi\u00f3n de Xdebug que se adapte a tu flujo de trabajo. A partir de ah\u00ed, no tardar\u00e1s en hacerte con la herramienta.<\/p>\n<p>Este tutorial analizar\u00e1 Xdebug en profundidad, incluyendo el proceso de instalaci\u00f3n, la integraci\u00f3n en tu configuraci\u00f3n y el uso general.<\/p>\n<p>En primer lugar, vamos a darte m\u00e1s contexto sobre lo que es Xdebug y lo que hace.<br \/>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc><\/p>\n<h2>Presentaci\u00f3n de Xdebug<\/h2>\n<p><a href=\"https:\/\/xdebug.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Xdebug<\/a> es una de las extensiones m\u00e1s populares para depurar tu c\u00f3digo PHP. La instalar\u00e1s desde el entorno que elijas, y act\u00faa como un \u00abdepurador de pasos\u00bb.<\/p>\n<figure id=\"attachment_133040\" aria-describedby=\"caption-attachment-133040\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133040 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/xdebug.png\" alt=\"El logotipo de Xdebug.\" width=\"1000\" height=\"187\"><figcaption id=\"caption-attachment-133040\" class=\"wp-caption-text\">El logotipo de Xdebug.<\/figcaption><\/figure>\n<p>En resumen, esto te permite trabajar en tu c\u00f3digo l\u00ednea por l\u00ednea, de modo que puedes recorrerlo y ver c\u00f3mo act\u00faa e interact\u00faa el c\u00f3digo dentro de tu programa, as\u00ed como investigar su salida. A partir de ah\u00ed, puedes hacer los cambios que consideres oportunos.<\/p>\n<p>Pero Xdebug puede hacer mucho m\u00e1s:<\/p>\n<ul>\n<li>Puedes analizar el <a href=\"https:\/\/kinsta.com\/es\/blog\/monitoreo-rendimiento-aplicaciones\/\" target=\"_blank\" rel=\"noopener noreferrer\">rendimiento de tu c\u00f3digo<\/a> mediante un conjunto de m\u00e9tricas y visualizaciones.<\/li>\n<li>Cuando ejecutas pruebas unitarias de PHP, puedes ver qu\u00e9 suites de c\u00f3digo ejecuta y ejecuta.<\/li>\n<li>Xdebug incluye capacidades de \u00abrastreo\u00bb, que escribir\u00e1n cada llamada a una funci\u00f3n en el disco. Esto incluir\u00e1 argumentos, asignaciones de variables y valores de retorno.<\/li>\n<li>Xdebug tambi\u00e9n introduce mejoras en el informe de errores est\u00e1ndar de PHP. M\u00e1s adelante hablaremos de esto.<\/li>\n<\/ul>\n<p>Dado el conjunto de caracter\u00edsticas, hay muchas formas de utilizar Xdebug (y cualquier depurador similar) dentro de tu flujo de trabajo. Las cubriremos en la siguiente secci\u00f3n.<\/p>\n\n<h2>Por Qu\u00e9 Querr\u00edas Usar Xdebug<\/h2>\n<p>Muchos desarrolladores no tienen un flujo de trabajo de depuraci\u00f3n dedicado que utilice herramientas y extensiones de terceros. Esto se debe a que PHP incluye su propio registro de errores rudimentario. Utilizar\u00e1s comandos como <code>error_log<\/code>, <code>var_dump<\/code> y print para ver los resultados de las variables y las llamadas a funciones.<\/p>\n<p>Por ejemplo, hay muchos fragmentos que puedes reutilizar para el desarrollo de WordPress: <a href=\"https:\/\/stackoverflow.com\/questions\/15085482\/wordpress-debugging\">Stack Overflow est\u00e1 repleto de ellos<\/a>:<\/p>\n<pre><code class=\"language-php\">function log_me($message) {\n  if ( WP_DEBUG === true ) {\n      if ( is_array($message) || is_object($message) ) {\n          error_log( print_r($message, true) );\n      } else {\n           error_log( $message );\n      }\n  }\n}<\/code><\/pre>\n<p>Sin embargo, este enfoque tiene algunos inconvenientes importantes:<\/p>\n<ul>\n<li>Primero debes asegurarte de habilitar los registros de errores para la plataforma con la que est\u00e1s trabajando. En este caso, querr\u00e1s habilitar <code>WP_DEBUG<\/code> (m\u00e1s sobre esto en breve).<\/li>\n<li>Este ejemplo de depuraci\u00f3n por \u00abvolcado\u00bb ofrece menos posibilidades de investigaci\u00f3n que la depuraci\u00f3n por pasos. Aqu\u00ed, s\u00f3lo puedes sacar lo que definas.<\/li>\n<\/ul>\n<p>El \u00faltimo punto requiere mucho esfuerzo manual, especialmente si tu trabajo diario no es <a href=\"https:\/\/kinsta.com\/es\/blog\/sysadmin\/\" target=\"_blank\" rel=\"noopener noreferrer\">como administrador del sistema<\/a>. Por ejemplo, si quieres depurar un bloque de c\u00f3digo, puedes a\u00f1adir tu fragmento en funci\u00f3n de una variable que definas. Sin embargo, puede que no sea el origen del problema o que ni siquiera indique lo que est\u00e1 ocurriendo.<\/p>\n<p>En su lugar, una herramienta como Xdebug puede hacer su magia para proporcionar un mayor alcance:<\/p>\n<ul>\n<li>Puedes \u00abromper\u00bb tu c\u00f3digo en varios puntos de la ejecuci\u00f3n para ver lo que ocurre en tiempo real.<\/li>\n<li>Hay una mir\u00edada de m\u00e9tricas, visualizaciones, ramas y m\u00e1s para ayudarte a averiguar qu\u00e9 est\u00e1 haciendo tu c\u00f3digo y c\u00f3mo responde.<\/li>\n<li>A veces, incluso puedes cambiar los valores sobre la marcha durante el proceso de depuraci\u00f3n. Esto ofrece un valor inmenso, incluso para conjuntos de c\u00f3digo que funcionan bien. B\u00e1sicamente, puedes realizar pruebas unitarias manuales en cualquier momento.<\/li>\n<li>Como utilizas los puntos de interrupci\u00f3n para marcar las \u00e1reas a depurar, no necesitas trabajar con fragmentos dentro de tu c\u00f3digo. Esto mantiene tu c\u00f3digo m\u00e1s limpio y reduce el n\u00famero de problemas futuros.<\/li>\n<\/ul>\n<p>En general, utilizar una herramienta como Xdebug es una decisi\u00f3n proactiva m\u00e1s que reactiva. Puedes utilizar la depuraci\u00f3n por pasos como parte del proceso central de desarrollo, de forma similar a la implementaci\u00f3n de pruebas unitarias como parte del desarrollo dirigido por pruebas (TDD).<\/p>\n<h2>C\u00f3mo Activar el Registro de Errores de PHP<\/h2>\n<p>Aunque podr\u00edas depurar tu c\u00f3digo sin un error espec\u00edfico, a menudo es bueno saber si se produce un problema sin tener abierto Xdebug. Esto te da un <a href=\"https:\/\/kinsta.com\/es\/blog\/depuracion-rendimiento-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">punto de partida para la exploraci\u00f3n<\/a>. No es estrictamente necesario, pero puede ser una parte \u00fatil de tu cadena.<\/p>\n<p>Para informar de cada error que surja, tendr\u00e1s que a\u00f1adir una l\u00ednea al principio del archivo PHP correspondiente:<\/p>\n<pre><code class=\"language-bash\">error_reporting(E_ALL);<\/code><\/pre>\n<p>Esta es una orden de captura, y puedes conseguir lo mismo utilizando la funci\u00f3n <code><a href=\"https:\/\/www.php.net\/manual\/en\/function.ini-set.php\">ini_set<\/a><\/code> funci\u00f3n:<\/p>\n<pre><code class=\"language-bash\">ini_set('error_reporting', E_ALL);<\/code><\/pre>\n<p>Esto te permite cambiar la configuraci\u00f3n dentro de tu archivo <strong>php.ini<\/strong> proyecto por proyecto. Aunque podr\u00edas entrar en este archivo y hacer un cambio manual, a menudo es mejor trabajar con <code>ini_set<\/code> para cambiar el par\u00e1metro espec\u00edfico:<\/p>\n<pre><code class=\"language-bash\">ini_set('display_errors', '1');<\/code><\/pre>\n<p>Una vez que tengas los informes de errores activos configurados a tu gusto, puedes empezar a trabajar con Xdebug.<\/p>\n<h2>C\u00f3mo utilizar Xdebug<\/h2>\n<p>En las pr\u00f3ximas secciones, te mostraremos c\u00f3mo utilizar Xdebug, incluyendo los pasos que necesitar\u00e1s para configurar las cosas. Aunque no podemos cubrir todos los aspectos de la herramienta, esta gu\u00eda de inicio r\u00e1pido te har\u00e1 avanzar r\u00e1pidamente.<\/p>\n<p>Sin embargo, primero tienes que instalar Xdebug. Veamos c\u00f3mo hacerlo.<\/p>\n<h3>1. Instala Xdebug para tu sistema operativo (SO)<\/h3>\n<p>Dado que Xdebug se adapta a cualquier n\u00famero de configuraciones, el <a href=\"https:\/\/xdebug.org\/docs\/install\">proceso exacto<\/a> para cada una de ellas ser\u00e1 ligeramente diferente. A nivel de SO, hay algunas diferencias:<\/p>\n<ul>\n<li><strong>Windows:<\/strong> Se trata de un proceso de configuraci\u00f3n algo complicado que implica utilizar un archivo PHP existente y un <a href=\"https:\/\/xdebug.org\/wizard\">asistente de instalaci\u00f3n<\/a>, para luego descargar la versi\u00f3n adecuada para tu sistema.<\/li>\n<li><strong>Linux:<\/strong> El m\u00e9todo aqu\u00ed es posiblemente el m\u00e1s sencillo: Puedes utilizar un <a href=\"https:\/\/xdebug.org\/docs\/install#linux\">gestor de paquetes<\/a> para instalar Xdebug, o la <a href=\"https:\/\/xdebug.org\/docs\/install#pecl\">PHP Extension Community Library (PECL)<\/a>.<\/li>\n<li><strong>Mac:<\/strong> Este m\u00e9todo tambi\u00e9n es sencillo: Una vez instalado PECL, puedes ejecutar <code>pecl install xdebug<\/code> desde una instancia de Terminal. Tambi\u00e9n necesitar\u00e1s tener instaladas las herramientas de l\u00ednea de comandos XCode y PHP en tu sistema.<\/li>\n<\/ul>\n<p>Sin embargo, la mayor\u00eda de los usuarios no querr\u00e1n quedarse con una instancia de Xdebug a nivel de sistema. En su lugar, querr\u00e1n integrarlo en su propio entorno de staging.<\/p>\n<h3>2. Integrar Xdebug en tu entorno de staging<\/h3>\n<p>Una vez que hayas instalado Xdebug para tu sistema operativo, debes conectarlo a tu entorno.<\/p>\n<p>Hay tantos sistemas y herramientas compatibles que no podemos entrar en todos ellos. M\u00e1s adelante, te ofreceremos instrucciones tanto para <a href=\"https:\/\/kinsta.com\/es\/devkinsta\/\" target=\"_blank\" rel=\"noopener noreferrer\">DevKinsta<\/a> como para <a href=\"https:\/\/www.jetbrains.com\/phpstorm\/\" target=\"_blank\" rel=\"noopener noreferrer\">PhpStorm<\/a>. Aun as\u00ed, hay muchos otros entornos populares entre los que elegir. A continuaci\u00f3n te presentamos algunas de nuestras principales recomendaciones.<\/p>\n<h4>Varying Vagrant Vagrants (VVV)<\/h4>\n<p><a href=\"https:\/\/varyingvagrantvagrants.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">VVV<\/a> es uno de los entornos nombrados en el <a href=\"https:\/\/make.wordpress.org\/core\/handbook\/tutorials\/installing-a-local-server\/installing-vvv\/\" target=\"_blank\" rel=\"noopener noreferrer\">sitio web de Make WordPress<\/a>:<\/p>\n<figure id=\"attachment_133039\" aria-describedby=\"caption-attachment-133039\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133039 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/vvv-logo.png\" alt=\"El logo de Varying Vagrant Vagrants.\" width=\"1000\" height=\"349\"><figcaption id=\"caption-attachment-133039\" class=\"wp-caption-text\">El logo de Varying Vagrant Vagrants.<\/figcaption><\/figure>\n<p>La buena noticia es que VVV ya incluye una <a href=\"https:\/\/varyingvagrantvagrants.org\/docs\/en-US\/references\/xdebug\/\" target=\"_blank\" rel=\"noopener noreferrer\">versi\u00f3n de Xdebug<\/a>, pero tienes que activarla. Puedes hacerlo mediante Secure Shell (SSH) dentro de una ventana de Terminal:<\/p>\n<pre><code class=\"language-bash\">vagrant ssh -c \"switch_php_debugmod xdebug\"<\/code><\/pre>\n<p>Sin embargo, hay un peque\u00f1o impacto en el rendimiento, y tendr\u00e1s que volver a activar esta opci\u00f3n si aprovisionas tus sitios.<\/p>\n<h4>Laravel Valet<\/h4>\n<p>Para algunos usuarios, <a href=\"https:\/\/laravel.com\/docs\/9.x\/valet\">Valet de Laravel<\/a> representa un entorno de staging web casi perfecto. Y lo que es mejor, puedes integrar Xdebug con \u00e9l.<\/p>\n<p>Para ello, tendr\u00e1s que crear un archivo de configuraci\u00f3n para el depurador. Puedes encontrar tu propia ruta utilizando <code>php --ini<\/code> en la l\u00ednea de comandos, que te devolver\u00e1 unas cuantas rutas de archivos diferentes:<\/p>\n<figure id=\"attachment_133036\" aria-describedby=\"caption-attachment-133036\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133036 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/terminal-php-ini.png\" alt=\"El terminal muestra una lista de rutas de archivos de configuraci\u00f3n.\" width=\"1000\" height=\"444\"><figcaption id=\"caption-attachment-133036\" class=\"wp-caption-text\">El terminal muestra una lista de rutas de archivos de configuraci\u00f3n.<\/figcaption><\/figure>\n<p>A continuaci\u00f3n, crea un nuevo archivo <strong>xdebug.ini<\/strong> en la ruta de los archivos <strong>.ini<\/strong> adicionales. En nuestro ejemplo, est\u00e1 en <strong>\/opt\/homebrew\/etc\/php\/7.4\/conf.d<\/strong>.<\/p>\n<p>Una vez que abras este nuevo archivo, abre tambi\u00e9n la ruta del archivo de configuraci\u00f3n cargado (tu archivo principal <strong>php.ini<\/strong>). Con ambos abiertos, a\u00f1ade lo siguiente al final:<\/p>\n<ul>\n<li><strong>php.ini:<\/strong> <code>zend_extension=\"xdebug.so\"<\/code><\/li>\n<li><strong>xdebug.ini:<\/strong> <code>xdebug.mode=debug<\/code><\/li>\n<\/ul>\n<p>Una vez que hayas guardado los cambios, ejecuta <code>valet restart<\/code> desde el Terminal, y a\u00f1ade <code>phpinfo(); exit;<\/code> a uno de los archivos de tu sitio. Querr\u00e1s comprobar si esto funciona mediante una carga r\u00e1pida de la p\u00e1gina dentro del navegador.<\/p>\n<figure id=\"attachment_133031\" aria-describedby=\"caption-attachment-133031\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133031 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/php-info-page.png\" alt=\"La pantalla de informaci\u00f3n de PHP.\" width=\"1000\" height=\"498\"><figcaption id=\"caption-attachment-133031\" class=\"wp-caption-text\">La pantalla de informaci\u00f3n de PHP.<\/figcaption><\/figure>\n<p>Ten en cuenta que es posible que tengas que reiniciar PHP utilizando <code>sudo brew services restart php<\/code>, as\u00ed como comprobar que la instalaci\u00f3n de Xdebug en tu sistema es correcta utilizando <code>php --info | grep xdebug<\/code>. Notar\u00e1s las l\u00edneas espec\u00edficas de Xdebug dentro de la salida:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-133027 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/grep-xdebug-mode.png\" alt=\"Una ventana de Terminal mostrando una prueba de un archivo XAMPP.\" width=\"1000\" height=\"436\"><\/p>\n<p>A partir de aqu\u00ed, puedes buscar la forma de incorporar Xdebug a tu editor de c\u00f3digo preferido.<\/p>\n<h4>XAMPP<\/h4>\n<p>Al igual que Valet, el proceso de <a href=\"https:\/\/www.apachefriends.org\/download.html\">XAMPP<\/a> consta de varias partes. Sin embargo, las versiones de Windows y macOS tienen dos procesos diferentes.<\/p>\n<p>Comienza instalando XAMPP, y luego realiza una r\u00e1pida comprobaci\u00f3n para ver si el archivo <strong>php_xdebug.dll<\/strong> (Windows) o <strong>xdebug.so<\/strong> (macOS) existe en tu sistema:<\/p>\n<figure id=\"attachment_133038\" aria-describedby=\"caption-attachment-133038\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133038 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/test-xampp-file-terminal.png\" alt=\"Una ventana de Terminal mostrando una prueba de un archivo XAMPP.\" width=\"1000\" height=\"353\"><figcaption id=\"caption-attachment-133038\" class=\"wp-caption-text\">Una ventana de Terminal mostrando una prueba de un archivo XAMPP.<\/figcaption><\/figure>\n<p>Si el archivo existe, puedes pasar a la configuraci\u00f3n. Si no, primero tendr\u00e1s que <a href=\"https:\/\/xdebug.org\/download\">descargar el binario adecuado<\/a> para Windows -un archivo de 64 bits para tu versi\u00f3n de PHP preferida- o instalar algunas dependencias m\u00e1s si est\u00e1s en un Mac.<\/p>\n<p>En el caso de Windows, cambia el nombre del archivo DLL <strong>php_xdebug.dll<\/strong> y mu\u00e9velo a la ruta del archivo <strong>\\<\/strong><strong>xampp\\php\\ext<\/strong>. A continuaci\u00f3n, abre el archivo <strong>\\<\/strong><strong>xampp\\php\\php.ini<\/strong> en tu <a href=\"https:\/\/kinsta.com\/es\/blog\/mejores-editores-texto\/\" target=\"_blank\" rel=\"noopener noreferrer\">editor de c\u00f3digo preferido<\/a> y a\u00f1ade lo siguiente<\/p>\n<pre><code class=\"language-bash\">output_buffering = Off<\/code><\/pre>\n<p>En la secci\u00f3n <code>[XDebug]<\/code>, a\u00f1ade las tres l\u00edneas siguientes:<\/p>\n<pre><code class=\"language-bash\">zend_extension=xdebug\nxdebug.mode=debug\nxdebug.start_with_request=trigger<\/code><\/pre>\n<p>Una vez que guardes los cambios, reinicia Apache y prueba el Xdebug.<\/p>\n<p><a href=\"https:\/\/stevegeorge.net\/2022\/02\/11\/installing-xdebug-for-xampp-on-mac\/\" target=\"_blank\" rel=\"noopener noreferrer\">Para Mac<\/a>, querr\u00e1s asegurarte de que instalas las herramientas de l\u00ednea de comandos de <a href=\"https:\/\/developer.apple.com\/xcode\/\" target=\"_blank\" rel=\"noopener noreferrer\">Xcode<\/a> utilizando <code class=\"language-bash\">xcode-select --install<\/code> en una instancia de Terminal. Despu\u00e9s de eso, hay tres paquetes que querr\u00e1s instalar usando Homebrew:<\/p>\n<pre><code class=\"language-bash\">brew install autoconf automake libtool<\/code><\/pre>\n<p>En algunos casos, tambi\u00e9n tendr\u00e1s que reinstalar XAMPP para obtener tanto el programa principal como los \u00abArchivos de desarrollador\u00bb. Deber\u00edas poder reinstalar s\u00f3lo estos archivos, pero querr\u00e1s realizar primero una copia de seguridad de tu configuraci\u00f3n actual.<\/p>\n<p>A continuaci\u00f3n, navega hasta la descarga de la carpeta de fuentes de Xdebug en tu sistema y descomprime el archivo TGZ. Dentro de una ventana de Terminal, navega hasta ese directorio y ejecuta lo siguiente:<\/p>\n<pre><code class=\"language-bash\">phpize\npecl install xdebug<\/code><\/pre>\n<p>Ten en cuenta que es posible que tengas que usar <code>sudo<\/code> aqu\u00ed tambi\u00e9n. Desde aqu\u00ed, puedes editar el archivo php.ini de XAMPP. En la mayor\u00eda de las instalaciones de macOS, lo encontrar\u00e1s en <strong>\/Applications\/XAMPP\/xamppfiles\/etc\/php.ini<\/strong>. Dentro de este directorio, tambi\u00e9n encontrar\u00e1s la ruta de tu archivo <strong>xdebug.so<\/strong> \u2014 an\u00f3talo y util\u00edzalo en lugar del marcador de ruta del archivo para este fragmento:<\/p>\n<pre><code class=\"language-bash\">[xdebug]\nzend_extension=\/path\/to\/xdebug.so\nxdebug.mode=develop,degug\nxdebug.start_with_request=yes<\/code><\/pre>\n<p>Para probar si esto funciona, crea un nuevo archivo <strong>xdebug_info.php<\/strong> dentro del directorio principal de <strong>htdocs<\/strong> XAMPP. Dentro, a\u00f1ade lo siguiente:<\/p>\n<pre><code class=\"language-bash\">&lt;?php\nxdebug_info();<\/code><\/pre>\n<p>&#8230;luego actualiza Apache y prueba Xdebug en el navegador.<\/p>\n<h2>Utilizar PhpStorm con Xdebug<\/h2>\n<p>Una vez que hayas instalado Xdebug a trav\u00e9s del sistema operativo y de tu entorno de staging, tambi\u00e9n tendr\u00e1s que ver el propio depurador. Lo har\u00e1s a trav\u00e9s del editor de c\u00f3digo que hayas elegido o del <a href=\"https:\/\/kinsta.com\/es\/blog\/php-editor\/\">entorno de desarrollo integrado (IDE)<\/a>. Al igual que con tu entorno, hay muchos para elegir, y cada uno puede tener un enfoque diferente.<\/p>\n<p>Dicho esto, muchos desarrolladores optan por utilizar <a href=\"https:\/\/www.jetbrains.com\/phpstorm\/\" target=\"_blank\" rel=\"noopener noreferrer\">PhpStorm de JetBrains<\/a>. De hecho, PhpStorm ofrece \u00ab<a href=\"https:\/\/www.jetbrains.com\/help\/phpstorm\/preparing-to-use-wordpress.html\">asistencia para WordPress<\/a>\u00bb y es una opci\u00f3n popular por muchas otras razones.<\/p>\n<figure id=\"attachment_133032\" aria-describedby=\"caption-attachment-133032\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133032 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/php-storm.png\" alt=\"La interfaz de PhpStorm.\" width=\"1000\" height=\"625\"><figcaption id=\"caption-attachment-133032\" class=\"wp-caption-text\">La interfaz de PhpStorm.<\/figcaption><\/figure>\n<p>El <a href=\"https:\/\/www.jetbrains.com\/help\/phpstorm\/configuring-xdebug.html\">sitio web de JetBrains<\/a> incluye instrucciones completas para conectar Xdebug y PhpStorm, pero las repasaremos aqu\u00ed.<\/p>\n<p>En primer lugar, ve a la p\u00e1gina <strong>Lenguajes y marcos &gt; PHP<\/strong> dentro del panel de <strong>Preferencias<\/strong>. Aqu\u00ed, abre el men\u00fa \u00ab<strong>M\u00e1s elementos<\/strong>\u00bb junto al campo desplegable <strong>Int\u00e9rprete CLI<\/strong>:<\/p>\n<figure id=\"attachment_133021\" aria-describedby=\"caption-attachment-133021\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133021 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/cli-interpreter.png\" alt=\"Seleccionando un int\u00e9rprete CLI en PhpStorm.\" width=\"1000\" height=\"330\"><figcaption id=\"caption-attachment-133021\" class=\"wp-caption-text\">Seleccionando un int\u00e9rprete CLI en PhpStorm.<\/figcaption><\/figure>\n<p>Esto mostrar\u00e1 algunos detalles m\u00e1s sobre tu versi\u00f3n de PHP y tu int\u00e9rprete. Si haces clic en la elipsis de <strong>M\u00e1s elementos<\/strong> junto a la opci\u00f3n <strong>Archivo de configuraci\u00f3n<\/strong>, ver\u00e1s las rutas completas de tu archivo <strong>php.ini<\/strong>:<\/p>\n<figure id=\"attachment_133022\" aria-describedby=\"caption-attachment-133022\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133022 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/configuration-file.png\" alt=\"Modificando la configuraci\u00f3n de PHP dentro de PhpStorm.\" width=\"1000\" height=\"271\"><figcaption id=\"caption-attachment-133022\" class=\"wp-caption-text\">Modificando la configuraci\u00f3n de PHP dentro de PhpStorm.<\/figcaption><\/figure>\n<p>A continuaci\u00f3n trabajar\u00e1s con este archivo PHP para continuar con el proceso de configuraci\u00f3n.<\/p>\n<h4>Trabajar con el archivo php.ini<\/h4>\n<p>La primera tarea aqu\u00ed es editar cualquier l\u00ednea que afecte al funcionamiento de Xdebug con PhpStorm.<\/p>\n<p>Dentro del archivo <strong>php.ini<\/strong>, busca las siguientes l\u00edneas y elim\u00ednalas o com\u00e9ntalas:<\/p>\n<pre><code class=\"language-bash\">zend_extension=&lt;path_to_zend_debugger&gt;\nzend_extension=&lt;path_to_zend_optimizer&gt;<\/code><\/pre>\n<p>Estas l\u00edneas no estar\u00e1n presentes en todos los casos, as\u00ed que no te alarmes si no las ves.<\/p>\n<p>A continuaci\u00f3n, a\u00f1ade lo siguiente al archivo:<\/p>\n<pre><code class=\"language-bash\">[xdebug]\nzend_extension=\"xdebug.so\"\nxdebug.mode=debug\nxdebug.client_host=127.0.0.1\nxdebug.client_port=\"&lt;the port (9003 by default) to which Xdebug connects&gt;\"<\/code><\/pre>\n<p>Hay que tener en cuenta algunas cosas sobre este conjunto de c\u00f3digo:<\/p>\n<ul>\n<li>Puede que ya tengas una secci\u00f3n <code>[xdebug]<\/code>, en cuyo caso puedes omitir la primera designaci\u00f3n.<\/li>\n<li>La entrada <code>zend_extension<\/code> puede necesitar que a\u00f1adas la ruta completa de <strong>xdebug.so<\/strong> para conectarte.<\/li>\n<li>Aunque parezca un marcador de posici\u00f3n, el par\u00e1metro <code>xdebug.client_port<\/code> es la forma en que lo establecer\u00e1s dentro de tu c\u00f3digo.<\/li>\n<\/ul>\n<p>Una vez que los a\u00f1adas, guarda y cierra el archivo, y luego prueba la versi\u00f3n de PHP desde la l\u00ednea de comandos (usando <code>php --version<\/code>):<\/p>\n<figure id=\"attachment_133037\" aria-describedby=\"caption-attachment-133037\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133037 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/terminal-xdebug-php-version.png\" alt=\"Pruebas de las instalaciones actuales para PHP y Xdebug utilizando el Terminal de macOS.\" width=\"1000\" height=\"416\"><figcaption id=\"caption-attachment-133037\" class=\"wp-caption-text\">Pruebas de las instalaciones actuales para PHP y Xdebug utilizando el Terminal de macOS.<\/figcaption><\/figure>\n<p>Si tienes una versi\u00f3n de Xdebug que funciona, se mostrar\u00e1 como una de las extensiones de PHP. Tambi\u00e9n puedes a\u00f1adir <code>phpinfo();<\/code> a un nuevo archivo y probarlo en el navegador.<\/p>\n<p>Esto es casi todo lo que necesitas hacer para que Xdebug funcione como tu depurador por defecto con PhpStorm. El \u00faltimo paso antes de utilizarlo es instalar una extensi\u00f3n de ayuda al navegador.<\/p>\n<h4>Instalar una extensi\u00f3n de ayuda al navegador<\/h4>\n<p>La \u00faltima conexi\u00f3n clave que tendr\u00e1s que hacer es entre tu navegador y PhpStorm, que se consigue activando la depuraci\u00f3n por pasos en el servidor. Aunque podr\u00edas hacerlo <a href=\"https:\/\/xdebug.org\/docs\/step_debug#starting\">desde la l\u00ednea de comandos<\/a> utilizando valores especiales de <code>GET<\/code> o <code>POST<\/code>, es m\u00e1s sencillo utilizar una extensi\u00f3n.<\/p>\n<p>Recomendamos utilizar la extensi\u00f3n dedicada Xdebug Helper. Puedes instalarla en el navegador que prefieras:<\/p>\n<ul>\n<li><a href=\"https:\/\/chrome.google.com\/webstore\/detail\/xdebug-helper\/eadndfjplgieldjbigjakmdgkmoaaaoc\">Xdebug Helper para Chrome\/Chromium\/Brave<\/a><\/li>\n<li><a href=\"https:\/\/addons.mozilla.org\/en-GB\/firefox\/addon\/xdebug-helper-for-firefox\/\" target=\"_blank\" rel=\"noopener noreferrer\">Ayudante de Xdebug para Firefox<\/a><\/li>\n<\/ul>\n<p>Si quieres explorar otras extensiones, el <a href=\"https:\/\/www.jetbrains.com\/help\/phpstorm\/browser-debugging-extensions.html\">sitio web de JetBrains<\/a> ofrece algunas opciones adicionales para los navegadores m\u00e1s populares.<\/p>\n<p>Una vez que hayas instalado la extensi\u00f3n del navegador que hayas elegido, no deber\u00edas tener que ajustar ninguna otra opci\u00f3n de configuraci\u00f3n. A partir de aqu\u00ed, puedes empezar a utilizar Xdebug con PhpStorm.<\/p>\n<h3>Uso de Xdebug<\/h3>\n<p>Aunque aqu\u00ed utilizaremos PhpStorm, ver\u00e1s un dise\u00f1o y una interfaz similares entre los distintos IDE, aunque tambi\u00e9n habr\u00e1 algunas diferencias obvias.<\/p>\n<p>Hay algunos conceptos que se combinan para formar toda la experiencia de depuraci\u00f3n:<\/p>\n<ul>\n<li><strong>Puntos de interrupci\u00f3n:<\/strong> Son los puntos en los que Xdebug se detendr\u00e1 para permitirte inspeccionar la salida. Puedes establecer tantos como quieras.<\/li>\n<li><strong>Escuchar las conexiones:<\/strong> Puedes activar y desactivar esta opci\u00f3n, aunque la mayor\u00eda de los desarrolladores la dejar\u00e1n siempre activada.<\/li>\n<li><strong>La pantalla de depuraci\u00f3n:<\/strong> La mayor parte de tu tiempo lo pasar\u00e1s en la interfaz de depuraci\u00f3n: es donde trabajar\u00e1s con las distintas l\u00edneas de c\u00f3digo, variables y par\u00e1metros.<\/li>\n<\/ul>\n<p>El primer paso es activar la escucha: no podr\u00e1s depurar nada sin ella. Para ello, haz clic en la opci\u00f3n <strong>Ejecutar &gt; Iniciar la escucha de las conexiones de depuraci\u00f3n de PHP<\/strong> en la barra de herramientas:<\/p>\n<figure id=\"attachment_133034\" aria-describedby=\"caption-attachment-133034\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133034 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/phpstorm-run-menu.png\" alt=\"El men\u00fa Ejecutar abierto dentro de PhpStorm.\" width=\"1000\" height=\"479\"><figcaption id=\"caption-attachment-133034\" class=\"wp-caption-text\">El men\u00fa Ejecutar abierto dentro de PhpStorm.<\/figcaption><\/figure>\n<p>Como alternativa, puedes hacer clic en el icono del \u00abtel\u00e9fono\u00bb dentro de la barra de herramientas de PhpStorm:<\/p>\n<figure id=\"attachment_133033\" aria-describedby=\"caption-attachment-133033\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133033 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/phpstorm-bug-toolbar.png\" alt=\"Escuchar las conexiones de depuraci\u00f3n de PHP mediante el icono del tel\u00e9fono dentro de la barra de herramientas de PhpStorm.\" width=\"1000\" height=\"322\"><figcaption id=\"caption-attachment-133033\" class=\"wp-caption-text\">Escuchar las conexiones de depuraci\u00f3n de PHP mediante el icono del tel\u00e9fono dentro de la barra de herramientas de PhpStorm.<\/figcaption><\/figure>\n<p>Cualquiera de estas opciones iniciar\u00e1 la escucha de conexiones.<\/p>\n<p>A partir de aqu\u00ed, puedes empezar a establecer puntos de ruptura dentro de los canales del editor de c\u00f3digo. Un punto rojo indica un punto de ruptura, en el que puedes hacer clic para activarlo:<\/p>\n<figure id=\"attachment_133020\" aria-describedby=\"caption-attachment-133020\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133020 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/add-breakpoints.png\" alt=\"Puntos de interrupci\u00f3n dentro del canal\u00f3n de una p\u00e1gina de edici\u00f3n de PhpStorm.\" width=\"1000\" height=\"661\"><figcaption id=\"caption-attachment-133020\" class=\"wp-caption-text\">Puntos de interrupci\u00f3n dentro del canal\u00f3n de una p\u00e1gina de edici\u00f3n de PhpStorm.<\/figcaption><\/figure>\n<p>Cuando quieras depurar tu c\u00f3digo, lo m\u00e1s sencillo es empezar a escuchar, establecer puntos de interrupci\u00f3n y luego dirigirte a la p\u00e1gina espec\u00edfica en tu navegador. Localiza el icono de tu extensi\u00f3n dentro del navegador, haz clic en \u00e9l y selecciona la opci\u00f3n \u00abDepurar\u00bb:<\/p>\n<figure id=\"attachment_133035\" aria-describedby=\"caption-attachment-133035\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133035 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/select-debug-browser.png\" alt=\"Seleccionando la opci\u00f3n de Depuraci\u00f3n dentro de la barra de herramientas del navegador utilizando una extensi\u00f3n dedicada.\" width=\"1000\" height=\"317\"><figcaption id=\"caption-attachment-133035\" class=\"wp-caption-text\">Seleccionando la opci\u00f3n de Depuraci\u00f3n dentro de la barra de herramientas del navegador utilizando una extensi\u00f3n dedicada.<\/figcaption><\/figure>\n<p>Esto abrir\u00e1 el depurador en PhpStorm y dar\u00e1 las buenas o malas noticias:<\/p>\n<figure id=\"attachment_133024\" aria-describedby=\"caption-attachment-133024\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133024 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/debugger-output.png\" alt=\"Usando el depurador de PhpStorm con Xdebug.\" width=\"1000\" height=\"509\"><figcaption id=\"caption-attachment-133024\" class=\"wp-caption-text\">Usando el depurador de PhpStorm con Xdebug.<\/figcaption><\/figure>\n<p>Si haces clic con el bot\u00f3n derecho en los distintos valores, atributos, par\u00e1metros y variables, podr\u00e1s acceder a otro men\u00fa contextual. Esto te da mucho margen para probar y depurar tu c\u00f3digo:<\/p>\n<figure id=\"attachment_133023\" aria-describedby=\"caption-attachment-133023\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133023 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/context-menu-debugger.png\" alt=\"Utilizando el men\u00fa contextual del bot\u00f3n derecho del rat\u00f3n dentro del depurador de PhpStorm para establecer nuevos valores.\" width=\"1000\" height=\"585\"><figcaption id=\"caption-attachment-133023\" class=\"wp-caption-text\">Utilizando el men\u00fa contextual del bot\u00f3n derecho del rat\u00f3n dentro del depurador de PhpStorm para establecer nuevos valores.<\/figcaption><\/figure>\n<p>Por ejemplo, podr\u00edas establecer diferentes valores para las variables a lo largo de la ruta. Esto podr\u00eda ser un intento deliberado de romper tu c\u00f3digo y ver qu\u00e9 ocurre, o podr\u00eda ser una forma de probar un c\u00f3digo que ya necesita una correcci\u00f3n. En cualquier caso, esto te proporciona un m\u00e9todo fant\u00e1stico para depurar tu c\u00f3digo sin tener que alterarlo primero.<\/p>\n<h2>C\u00f3mo Te Ayuda Kinsta a Ddepurar Tu Sitio Web de WordPress<\/h2>\n<p>WordPress viene con su propio <a href=\"https:\/\/kinsta.com\/es\/docs\/alojamiento-wordpress\/resolucion-de-problemas-de-wordpress\/depuracion-wordpress\/\">conjunto de opciones de depuraci\u00f3n<\/a> a trav\u00e9s de <code>WP_DEBUG<\/code> y otras herramientas, <a href=\"https:\/\/kinsta.com\/es\/blog\/query-monitor\/\" target=\"_blank\" rel=\"noopener noreferrer\">como Query Monitor<\/a>. \u00c9stas habilitan un modo en el que empezar\u00e1s a ver mensajes de error previamente ocultos en todo tu sitio y en el panel de control. A partir de ah\u00ed, puedes empezar a averiguar cu\u00e1l es el problema.<\/p>\n<p>Tambi\u00e9n puedes guardar esos mensajes de error utilizando <code>WP_DEBUG_LOG<\/code>, lo que te proporciona una forma de documentar los problemas de tu sitio. Cubrimos c\u00f3mo configurar esto en <a href=\"https:\/\/kinsta.com\/es\/blog\/depuracion-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">otro art\u00edculo del blog<\/a>. Esto es muy f\u00e1cil de configurar a trav\u00e9s de tu <a href=\"https:\/\/my.kinsta.com\/?lang=es\" target=\"_blank\" rel=\"noopener noreferrer\">panel de MyKinsta<\/a> (y la pantalla <strong>Sitios &gt; Herramientas<\/strong>):<\/p>\n<figure id=\"attachment_133029\" aria-describedby=\"caption-attachment-133029\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133029 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/kinsta-dashboard-debug.png\" alt=\"La opci\u00f3n de depuraci\u00f3n de WordPress dentro del panel de control de MyKinsta.\" width=\"1000\" height=\"220\"><figcaption id=\"caption-attachment-133029\" class=\"wp-caption-text\">La opci\u00f3n de depuraci\u00f3n de WordPress dentro del panel de control de MyKinsta.<\/figcaption><\/figure>\n<p>Si combinas esto con la <a href=\"https:\/\/kinsta.com\/es\/devkinsta\/caracteristicas\/\" target=\"_blank\" rel=\"noopener noreferrer\">herramienta gratuita de entorno local DevKinsta<\/a>, tambi\u00e9n tendr\u00e1s una forma de <a href=\"https:\/\/kinsta.com\/es\/docs\/devkinsta\/resolucion-de-problemas-devkinsta\/registro\/\" target=\"_blank\" rel=\"noopener noreferrer\">activar y desactivar<\/a> <code>WP_DEBUG<\/code> con un solo clic para cada sitio que crees:<\/p>\n<figure id=\"attachment_133025\" aria-describedby=\"caption-attachment-133025\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133025 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/devkinsta-debug.png\" alt=\"Activando WP_DEBUG dentro del panel de control de DevKinsta.\" width=\"1000\" height=\"513\"><figcaption id=\"caption-attachment-133025\" class=\"wp-caption-text\">Activando WP_DEBUG dentro del panel de control de DevKinsta.<\/figcaption><\/figure>\n<p>Esto significa que puedes detectar errores en tu sitio durante el desarrollo, y asegurarte de que no lleguen a tu sitio en vivo. Estos modos tambi\u00e9n son f\u00e1ciles de desactivar, lo que es vital para la <a href=\"https:\/\/kinsta.com\/es\/blog\/plugins-seguridad-wordpress\/\" target=\"_blank\" rel=\"noopener noreferrer\">seguridad del sitio y de los usuarios<\/a>.<\/p>\n<p>Todos los planes de Kinsta tambi\u00e9n vienen con la <a href=\"https:\/\/kinsta.com\/es\/herramienta-apm\/\">herramienta Kinsta APM<\/a> integrada, que es nuestra herramienta de monitorizaci\u00f3n del rendimiento dise\u00f1ada a medida para los sitios de WordPress.<\/p>\n<p><kinsta-video src=\"https:\/\/kinsta.wistia.com\/medias\/18pecdzk7p\"><\/kinsta-video><\/p>\n<h2>Atajos de Comandos<\/h2>\n<p>Antes de terminar este post, debemos mencionar los atajos.<\/p>\n<p>Como muchas otras piezas de software, hay varias formas de navegar por Xdebug (y PhpStorm) utilizando s\u00f3lo el teclado. De hecho, puedes incluso utilizar la l\u00ednea de comandos para depurar scripts PHP.<\/p>\n<p>Una vez que Xdebug est\u00e9 funcionando, puedes utilizar los siguientes comandos para desplazarte:<\/p>\n<div class=\"responsive-table\">\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>Atajo<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Especifica el puerto de escucha (como <code>[9003]<\/code>)<\/td>\n<td><code>-p [value]<\/code><\/td>\n<\/tr>\n<tr>\n<td>Establece un punto de interrupci\u00f3n en la l\u00ednea especificada para la ruta de archivo dada.<\/td>\n<td><code>breakpoint_set -t line file:\/\/\/&lt;path&gt; -n &lt;line&gt;<\/code><\/td>\n<\/tr>\n<tr>\n<td>Ejecuta tu script hasta el final, o el siguiente punto de interrupci\u00f3n<\/td>\n<td><code>run<\/code><\/td>\n<\/tr>\n<tr>\n<td>Pasa a la siguiente l\u00ednea ejecutable<\/td>\n<td><code>step_into<\/code><\/td>\n<\/tr>\n<tr>\n<td>Enumera las variables y los valores en el \u00e1mbito actual<\/td>\n<td><code>context_get<\/code><\/td>\n<\/tr>\n<tr>\n<td>Muestra el valor de la propiedad especificada<\/td>\n<td><code>property_get -n &lt;property&gt;<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>Aunque tu editor de c\u00f3digo espec\u00edfico tendr\u00e1 sus propios atajos dedicados, aqu\u00ed nos centramos en PhpStorm. Echa un vistazo a esta tabla de <a href=\"https:\/\/www.jetbrains.com\/help\/phpstorm\/mastering-keyboard-shortcuts.html#learn-shortcuts\">atajos de teclado<\/a> para usar Xdebug con PhpStorm:<\/p>\n<div class=\"responsive-table\">\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>Windows<\/th>\n<th>macOS<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Acci\u00f3n Buscar<\/td>\n<td><strong>Ctrl<\/strong> + <strong>Shift<\/strong> + <strong>A<\/strong><\/td>\n<td><strong>May\u00fasculas<\/strong> + <strong>Cmd<\/strong> + <strong>A<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Abrir el depurador<\/td>\n<td><strong>May\u00fasculas<\/strong> + <strong>F9<\/strong><\/td>\n<td><strong>Ctrl<\/strong> + <strong>D<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Conmutar el punto de interrupci\u00f3n<\/td>\n<td><strong>Control<\/strong> + <strong>F8<\/strong><\/td>\n<td><strong>Cmd<\/strong> + <strong>F8<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Entrar en el paso<\/td>\n<td><strong>F7<\/strong><\/td>\n<td><strong>F7<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Pasar por encima<\/td>\n<td><strong>F8<\/strong><\/td>\n<td><strong>F8<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Ver puntos de interrupci\u00f3n<\/td>\n<td><strong>Ctrl<\/strong> + <strong>Shift<\/strong> + <strong>F8<\/strong><\/td>\n<td><strong>Shift<\/strong> + <strong>Cmd<\/strong> + <strong>F8<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Reanudar el programa<\/td>\n<td><strong>F9<\/strong><\/td>\n<td><strong>F9<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Evaluar la expresi\u00f3n actual<\/td>\n<td><strong>Alt<\/strong> + <strong>F8<\/strong><\/td>\n<td><strong>Opci\u00f3n<\/strong> + <strong>F8<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>Afortunadamente, no hay mucho que memorizar aqu\u00ed. Debes abrir el depurador, establecer puntos de interrupci\u00f3n por l\u00ednea, escuchar las conexiones y ejecutar tus scripts.<\/p>\n<p>Sin embargo, si necesitas un atajo para una tarea concreta, puedes utilizar el comando <strong>Buscar Acci\u00f3n<\/strong> de PhpStorm:<\/p>\n<figure id=\"attachment_133026\" aria-describedby=\"caption-attachment-133026\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133026 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/find-action-bar.png\" alt=\"Usando el men\u00fa de Acci\u00f3n Buscar dentro de PhpStorm.\" width=\"1000\" height=\"470\"><figcaption id=\"caption-attachment-133026\" class=\"wp-caption-text\">Usando el men\u00fa de Acci\u00f3n Buscar dentro de PhpStorm.<\/figcaption><\/figure>\n<p>Una vez que empieces a escribir en este espacio, se te mostrar\u00e1 una lista din\u00e1mica de comandos y atajos relacionados. Tambi\u00e9n puedes encontrar una versi\u00f3n en PDF de todos los atajos de teclado a trav\u00e9s del men\u00fa <strong>Ayuda &gt; Atajos de teclado en PDF<\/strong>.<\/p>\n<p>Si quieres ver los atajos en tiempo real mientras trabajas con el rat\u00f3n, JetBrains proporciona el plugin <a href=\"https:\/\/plugins.jetbrains.com\/plugin\/9792-key-promoter-x\">Key Promoter X<\/a>:<\/p>\n<figure id=\"attachment_133028\" aria-describedby=\"caption-attachment-133028\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133028 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/09\/key-promoter-x.png\" alt=\"La interfaz de PhpStorm muestra las notificaciones de Key Promoter X.\" width=\"1000\" height=\"463\"><figcaption id=\"caption-attachment-133028\" class=\"wp-caption-text\">La interfaz de PhpStorm muestra las notificaciones de Key Promoter X.<\/figcaption><\/figure>\n<p>Esta pr\u00e1ctica herramienta mostrar\u00e1 notificaciones de tu \u00faltima acci\u00f3n realizada, junto con su atajo de teclado relacionado. Una vez que aprendas y utilices los atajos, podr\u00e1s eliminar este plugin y recuperar ese valioso espacio en tu pantalla.<\/p>\n\n<h2>Resumen<\/h2>\n<p>La pr\u00e1ctica de la depuraci\u00f3n ha recorrido un largo camino desde sus humildes comienzos; ahora abarca un \u00e1mbito mucho m\u00e1s amplio de lo que sus progenitores podr\u00edan haber imaginado. Para llevar a cabo un trabajo minucioso a la hora de arreglar tu c\u00f3digo PHP, necesitar\u00e1s utilizar una herramienta competente. Hay muchas extensiones y herramientas magn\u00edficas entre las que elegir, pero <a href=\"https:\/\/xdebug.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Xdebug<\/a> es una de las principales.<\/p>\n<p>Como hemos visto, Xdebug puede adaptarse incluso a los gustos m\u00e1s ecl\u00e9cticos en cuanto a editores de c\u00f3digo, y es especialmente bueno cuando se combina con <a href=\"https:\/\/www.jetbrains.com\/phpstorm\/\" target=\"_blank\" rel=\"noopener noreferrer\">PhpStorm<\/a>. Sin embargo, independientemente de tu configuraci\u00f3n, a menudo habr\u00e1 una versi\u00f3n de Xdebug que se adapte a tus necesidades. En general, es una herramienta potente, flexible e intuitiva.<\/p>\n<p>\u00bfCrees que Xdebug merece sus grandes elogios, o hay otra herramienta de depuraci\u00f3n que prefieres? H\u00e1znoslo saber en la secci\u00f3n de comentarios m\u00e1s abajo<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Como puede atestiguar cualquier desarrollador, el c\u00f3digo nunca est\u00e1 listo para la producci\u00f3n despu\u00e9s del primer borrador. Una parte clave del proceso de desarrollo es la &#8230;<\/p>\n","protected":false},"author":117,"featured_media":58388,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[399,403,414,172,1180],"topic":[1337],"class_list":["post-58075","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-debugging","tag-web-development","tag-webdev","tag-wordpress","tag-xdebug","topic-herramientas-de-desarrollo-web"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress<\/title>\n<meta name=\"description\" content=\"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/es\/blog\/xdebug\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress\" \/>\n<meta property=\"og:description\" content=\"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/es\/blog\/xdebug\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinsta.es\/\" \/>\n<meta property=\"article:published_time\" content=\"2022-10-13T07:01:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-16T18:46:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Salman Ravoof\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png\" \/>\n<meta name=\"twitter:creator\" content=\"@salmanravoof\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_ES\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Salman Ravoof\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"21 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/\"},\"author\":{\"name\":\"Salman Ravoof\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987\"},\"headline\":\"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress\",\"datePublished\":\"2022-10-13T07:01:41+00:00\",\"dateModified\":\"2025-12-16T18:46:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/\"},\"wordCount\":4056,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png\",\"keywords\":[\"debugging\",\"web development\",\"webdev\",\"WordPress\",\"xdebug\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/\",\"url\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/\",\"name\":\"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png\",\"datePublished\":\"2022-10-13T07:01:41+00:00\",\"dateModified\":\"2025-12-16T18:46:26+00:00\",\"description\":\"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/es\/blog\/xdebug\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png\",\"width\":1460,\"height\":730,\"caption\":\"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/xdebug\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Herramientas de Desarrollo Web\",\"item\":\"https:\/\/kinsta.com\/es\/secciones\/herramientas-de-desarrollo-web\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/es\/#website\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluciones de alojamiento premium, r\u00e1pidas y seguras\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/es\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinsta.es\/\",\"https:\/\/x.com\/Kinsta_ES\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987\",\"name\":\"Salman Ravoof\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g\",\"caption\":\"Salman Ravoof\"},\"description\":\"Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.\",\"sameAs\":[\"https:\/\/salmanravoof.com\",\"https:\/\/www.linkedin.com\/in\/salman-ravoof-5a749133\/\",\"https:\/\/x.com\/salmanravoof\"],\"url\":\"https:\/\/kinsta.com\/es\/blog\/author\/salmanravoof\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress","description":"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/es\/blog\/xdebug\/","og_locale":"es_ES","og_type":"article","og_title":"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress","og_description":"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.","og_url":"https:\/\/kinsta.com\/es\/blog\/xdebug\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinsta.es\/","article_published_time":"2022-10-13T07:01:41+00:00","article_modified_time":"2025-12-16T18:46:26+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png","type":"image\/png"}],"author":"Salman Ravoof","twitter_card":"summary_large_image","twitter_description":"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.","twitter_image":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png","twitter_creator":"@salmanravoof","twitter_site":"@Kinsta_ES","twitter_misc":{"Escrito por":"Salman Ravoof","Tiempo de lectura":"21 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/"},"author":{"name":"Salman Ravoof","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987"},"headline":"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress","datePublished":"2022-10-13T07:01:41+00:00","dateModified":"2025-12-16T18:46:26+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/"},"wordCount":4056,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png","keywords":["debugging","web development","webdev","WordPress","xdebug"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/es\/blog\/xdebug\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/","url":"https:\/\/kinsta.com\/es\/blog\/xdebug\/","name":"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png","datePublished":"2022-10-13T07:01:41+00:00","dateModified":"2025-12-16T18:46:26+00:00","description":"La depuraci\u00f3n es una parte esencial del desarrollo web. Este post muestra c\u00f3mo usar Xdebug. Tambi\u00e9n veremos c\u00f3mo integrar PhpStorm con Xdebug.","breadcrumb":{"@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/es\/blog\/xdebug\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/#primaryimage","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2022\/10\/xdebug-1.png","width":1460,"height":730,"caption":"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress"},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/es\/blog\/xdebug\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/es\/"},{"@type":"ListItem","position":2,"name":"Herramientas de Desarrollo Web","item":"https:\/\/kinsta.com\/es\/secciones\/herramientas-de-desarrollo-web\/"},{"@type":"ListItem","position":3,"name":"C\u00f3mo Xdebug Puede Ayudarte a Ser un Mejor Desarrollador de WordPress"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/es\/#website","url":"https:\/\/kinsta.com\/es\/","name":"Kinsta\u00ae","description":"Soluciones de alojamiento premium, r\u00e1pidas y seguras","publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/es\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinsta.es\/","https:\/\/x.com\/Kinsta_ES","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987","name":"Salman Ravoof","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g","caption":"Salman Ravoof"},"description":"Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.","sameAs":["https:\/\/salmanravoof.com","https:\/\/www.linkedin.com\/in\/salman-ravoof-5a749133\/","https:\/\/x.com\/salmanravoof"],"url":"https:\/\/kinsta.com\/es\/blog\/author\/salmanravoof\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/58075","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/users\/117"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/comments?post=58075"}],"version-history":[{"count":16,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/58075\/revisions"}],"predecessor-version":[{"id":81437,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/58075\/revisions\/81437"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/es"},{"embeddable":true,"hreflang":"sv","title":"Swedish","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/se"},{"embeddable":true,"hreflang":"da","title":"Danish","href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/translations\/dk"},{"href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/58075\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media\/58388"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media?parent=58075"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/tags?post=58075"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/topic?post=58075"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}