{"id":230255,"date":"2022-12-02T12:02:00","date_gmt":"2022-12-02T09:02:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=230255"},"modified":"2022-11-09T20:48:38","modified_gmt":"2022-11-09T17:48:38","slug":"desarrollo-local-para-el-desarrollador-independiente-de-wordpress","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/es\/desarrollo-local-para-el-desarrollador-independiente-de-wordpress\/","title":{"rendered":"Desarrollo local para el desarrollador independiente de WordPress"},"content":{"rendered":"\n<p><strong><a href=\"https:\/\/tommcfarlin.com\/the-independent-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">La semana pasada<\/a><\/strong>, dije que iba a escribir una serie de publicaciones centradas expl\u00edcitamente en herramientas pr\u00e1cticas para desarrolladores independientes de WordPress que buscan mejorar sus habilidades.<\/p>\n<p>Espec\u00edficamente, escribir\u00e9 sobre <strong><a href=\"https:\/\/tommcfarlin.com\/the-independent-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">las herramientas, los procesos y m\u00e1s para el desarrollador independiente de WordPress<\/a><\/strong>. Por lo tanto, el objetivo es proporcionar una serie de contenido dirigido a aquellos de ustedes que son aut\u00f3nomos o que trabajan en un equipo pero que buscan aplicar herramientas y pr\u00e1cticas repetibles y s\u00f3lidas a su flujo de trabajo.<\/p>\n<p>En otras palabras, se trata de usar un conjunto de herramientas dise\u00f1adas para ayudarlo a crear las mejores soluciones posibles para sus clientes (y hacerlo con gastos generales m\u00ednimos).<\/p>\n<p>El desaf\u00edo que conlleva hacer algo como esto es doble:<\/p>\n<ol>\n<li>Es mucho contenido,<\/li>\n<li>Hay una [peque\u00f1a] curva de aprendizaje.<\/li>\n<\/ol>\n<p>Entonces, s\u00ed, t\u00e9cnicamente puede ir a diferentes sitios o \u00e1reas y aprender partes sobre estas cosas, pero el objetivo de la pr\u00f3xima serie de publicaciones es simple:<\/p>\n<blockquote>\n<p>Conc\u00e9ntrese directamente en el desarrollador independiente de WordPress y h\u00e1galo de una manera pr\u00e1ctica, f\u00e1cil de entender y aplicable.<\/p>\n<\/blockquote>\n<p>Y eso es lo que planeo hacer en la serie a partir de hoy.<\/p>\n<h2>Para el desarrollador independiente de WordPress<\/h2>\n<p>Independientemente de si es nuevo en esto o si ha estado haciendo esto durante a\u00f1os (\u00a1tal vez incluso una d\u00e9cada!), Escribir\u00e9 estas publicaciones de una manera que le permitir\u00e1 aumentar sus pr\u00e1cticas o refinar su pr\u00e1cticas para que pueda ser mejor en lo que hace mediante el uso de herramientas, procesos y tareas pr\u00e1cticas repetibles que se traducen de un proyecto a otro.<\/p>\n<h3>Una palabra sobre los entornos<\/h3>\n<p>Por supuesto, siempre existe la pregunta de por d\u00f3nde empezar, \u00bfverdad?<\/p>\n<p>Esta serie asume que est\u00e1 trabajando en una Mac o una m\u00e1quina basada en Linux; sin embargo, me asegurar\u00e9 de vincular cualquier cosa espec\u00edfica de Windows cuando sea posible.<\/p>\n<p>En segundo lugar, cuando se trata de cualquier tipo de desarrollo web, siempre querr\u00e1 asegurarse de tener tres \u00e1reas principales, o entornos, configurados para su proyecto:<\/p>\n<ol>\n<li><strong>desarrollo<\/strong> _ Esta es la m\u00e1quina que tiene, en la que comienza a construir un proyecto. Tiene el conjunto de herramientas que necesita para escribir c\u00f3digo, probar y evaluar lo que est\u00e1 haciendo. Eso significa que no solo tiene sus herramientas de desarrollo, sino tambi\u00e9n herramientas como un servidor web, una base de datos, PHP y WordPress junto con otras herramientas que cubrir\u00e9 m\u00e1s adelante en esta serie.<\/li>\n<li><strong>puesta en<\/strong> escena Esta es el \u00e1rea donde comparte una versi\u00f3n de su c\u00f3digo de trabajo con su cliente. Normalmente se puede acceder a trav\u00e9s de una direcci\u00f3n en la web y contiene solo lo que se necesita para ejecutar su c\u00f3digo. En este caso, un servidor web, una base de datos, PHP, WordPress y el c\u00f3digo que has escrito. Finalmente, esta \u00e1rea est\u00e1 destinada a que los clientes vean el progreso, interact\u00faen con su trabajo e incluso rompan algo.<\/li>\n<li><strong>producci\u00f3n<\/strong> _ Aqu\u00ed es donde se lanza la versi\u00f3n final del producto. La forma en que se configura es similar a la puesta en escena (que tambi\u00e9n deber\u00eda ser similar al desarrollo), excepto que esta es la versi\u00f3n en vivo del proyecto donde los usuarios, clientes y otros interactuar\u00e1n. Es la versi\u00f3n final y no es un lugar en el que se deba hacer el desarrollo.<\/li>\n<\/ol>\n<p>Me imagino que la mayor\u00eda de los que leen esto ya est\u00e1n familiarizados con cada uno de los anteriores y c\u00f3mo interact\u00faan entre s\u00ed. Sin embargo, existen formas de agilizar la interacci\u00f3n entre ellos. Por ejemplo, una forma de hacerlo es a trav\u00e9s de la integraci\u00f3n continua. Y ese es un tema sobre el que escribir\u00e9 en una publicaci\u00f3n futura.<\/p>\n<p>Sin embargo, toda esta serie de publicaciones puede representarse como bloques de construcci\u00f3n, por lo que comenzaremos en el nivel fundamental y trabajaremos hacia arriba.<\/p>\n<p>Para aquellos de ustedes que me han estado siguiendo a m\u00ed y a este blog durante alg\u00fan tiempo, es probable que hayan le\u00eddo alg\u00fan contenido sobre lo anterior, ya sea aqu\u00ed o en otro lugar. \u00a1Y eso es genial! Pero no quiero hacer suposiciones. En cambio, quiero hacer la gu\u00eda de facto para el desarrollador independiente de WordPress.<\/p>\n<p>As\u00ed que estoy empezando en el nivel del entorno de desarrollo local.<\/p>\n<h3>Preparaci\u00f3n de su entorno de desarrollo local<\/h3>\n<p>Podr\u00eda decirse que configurar su entorno de desarrollo local es el aspecto m\u00e1s complicado de todo este proceso, por lo que dedicar\u00e9 algunas publicaciones a hablar exclusivamente de esto.<\/p>\n<p>A lo largo de la serie, voy a hablar de:<\/p>\n<ol>\n<li>El servidor web<\/li>\n<li>Herramientas de base de datos<\/li>\n<li>PHP y WordPress<\/li>\n<li>un IDE<\/li>\n<li>Herramientas de calidad de c\u00f3digo<\/li>\n<\/ol>\n<p>Esto se distribuir\u00e1 en varios art\u00edculos porque quiero mantener cada art\u00edculo en una longitud manejable. Adem\u00e1s, quiero incluir al menos una tarea procesable para completar a lo largo del contenido (a veces m\u00e1s de una).<\/p>\n<h4>El servidor web<\/h4>\n<p>El contenido de esta serie de art\u00edculos pretende ser pr\u00e1ctico, no demasiado t\u00e9cnico y ciertamente no te\u00f3rico. Sin embargo, creo que es importante definir los t\u00e9rminos cuando sea necesario para que todos estemos en la misma p\u00e1gina cuando se habla de un tema determinado.<\/p>\n<p>As\u00ed que vamos a definir un servidor web. Para nuestros prop\u00f3sitos:<\/p>\n<blockquote>\n<p>Un servidor web es una pieza de software responsable de manejar las solicitudes entrantes de una p\u00e1gina y devolverlas a la persona que solicit\u00f3 dicha p\u00e1gina.<\/p>\n<\/blockquote>\n<p>En definitiva, al proporcionarle una direcci\u00f3n, el servidor web devolver\u00e1 los datos asociados a dicha URL.<\/p>\n<h4>Configure el servicio de valet en su m\u00e1quina<\/h4>\n<p>El primer paso para preparar un entorno de desarrollo local es asegurarse de tener un servidor web disponible en su m\u00e1quina. Hay una variedad de herramientas que hacen esto posible; sin embargo, para los prop\u00f3sitos de esta serie, usaremos <strong><a href=\"https:\/\/laravel.com\/docs\/5.2\/valet\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Valet<\/a><\/strong>.<\/p>\n<ul>\n<li>es f\u00e1cil de configurar,<\/li>\n<li>requiere casi nada para administrar,<\/li>\n<li>y juega muy bien con WordPress.<\/li>\n<\/ul>\n<p>Para instalar, Valet hay algunos requisitos previos, todos los cuales son f\u00e1ciles de instalar. Cubrir\u00e9 cada uno de ellos en detalle aqu\u00ed para que tenga todo lo que necesita para comenzar r\u00e1pidamente.<\/p>\n<h5>1 Instalar Homebrew<\/h5>\n<p><strong><a href=\"https:\/\/brew.sh\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Homebrew<\/a><\/strong> es simplemente una manera f\u00e1cil de administrar aplicaciones (o paquetes) de terceros fuera de la Mac App Store. Es una gran herramienta para desarrolladores y hace que sea incre\u00edblemente f\u00e1cil instalar y desinstalar dichas aplicaciones.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508565ce5.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508565ce5.png\" alt=\"Desarrollo local para el desarrollador independiente de WordPress\" ><\/a><\/p>\n<p>Adem\u00e1s, cuenta con herramientas que ayudan a encontrar cuando existen problemas y solucionarlos.<\/p>\n<p>Para instalar Homebrew en su m\u00e1quina, ingrese <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/426e02bcfc411d43be6715b3e84ead7e#file-00-install-homebrew-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">el siguiente<\/a><\/strong> comando en su terminal:<\/p>\n<pre><code>$ \/usr\/bin\/ruby -e \"$(curl -fsSL https:\/\/raw.githubusercontent.com\/Homebrew\/install\/master\/install)\"<\/code><\/pre>\n<p>Esto supone que tiene instalado <strong><a href=\"https:\/\/www.ruby-lang.org\/en\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Ruby<\/a><\/strong> y que puede acceder a \u00e9l a trav\u00e9s de la ruta especificada en el comando anterior. Dependiendo de su sistema operativo, esto puede variar.<\/p>\n<p>Esto instalar\u00e1 Homebrew y las bibliotecas necesarias que necesita para ejecutarse. Realmente no necesita preocuparse por la informaci\u00f3n que muestra el terminal, ya que generalmente genera informaci\u00f3n sobre los paquetes que est\u00e1 descargando.<\/p>\n<p>Le dir\u00e1 cuando la instalaci\u00f3n est\u00e9 completa.<\/p>\n<h5>2 Instalar PHP<\/h5>\n<p>Una vez que Homebrew haya terminado de instalar, pasar a <strong><a href=\"https:\/\/secure.php.net\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHP<\/a><\/strong> es incre\u00edblemente f\u00e1cil. Aunque usar\u00e9 PHP7 para este conjunto particular de art\u00edculos, ya hay versiones m\u00e1s nuevas de PHP disponibles (como PHP7.1, PHP7.2, etc., todas las cuales se pueden instalar a trav\u00e9s de Homebrew).<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508978095.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508978095.png\" alt=\"Desarrollo local para el desarrollador independiente de WordPress\" ><\/a><\/p>\n<p>Opto por usar PHP7 porque es un buen t\u00e9rmino medio para lo que la mayor\u00eda de los hosts modernos ofrecer\u00e1n en t\u00e9rminos de alojamiento de WordPress y eso es ser optimista. Adem\u00e1s, PHP7 es r\u00e1pido y ofrece muchas funciones orientadas a objetos realmente agradables.<\/p>\n<p>Si est\u00e1 interesado en leer sobre varias versiones de PHP y cambiar entre ellas, las cubrir\u00e9 en un art\u00edculo posterior despu\u00e9s de que se complete la mayor parte de esta serie.<\/p>\n<p>De todos modos, instalar PHP7 a trav\u00e9s de Homebrew es tan f\u00e1cil como ingresar el siguiente comando en la terminal:<\/p>\n<p>Una vez hecho esto, se instala PHP y puede verificar que se est\u00e1 ejecutando emitiendo el siguiente comando:<\/p>\n<p>Y deber\u00edas ver algo como esto:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508cbe8e8.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508cbe8e8.png\" alt=\"Desarrollo local para el desarrollador independiente de WordPress\" ><\/a><\/p>\n<p>Con eso, es hora de instalar <strong>Composer<\/strong>.<\/p>\n<h5>3 Instalar compositor<\/h5>\n<p>Al igual que Homebrew es un administrador de paquetes para aplicaciones, <strong><a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Composer<\/a><\/strong> es un administrador de paquetes para aplicaciones PHP. Esto significa que puede instalar herramientas de terceros, bibliotecas e incluso aplicaciones completas (s\u00ed, incluso WordPress) a trav\u00e9s de Composer.<\/p>\n<p>Por ahora, sin embargo, vamos a limitar el uso de Composer a la instalaci\u00f3n de Valet. Antes de hacer eso, instalemos Composer. Para hacerlo, ingresa <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/426e02bcfc411d43be6715b3e84ead7e#file-03-install-composer-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">el siguiente comando<\/a><\/strong> en tu terminal:<\/p>\n<p>Una vez que est\u00e9 completo, puede probar la versi\u00f3n que est\u00e1 instalada ingresando el siguiente comando:<\/p>\n<p>Y deber\u00edas ver algo como lo siguiente:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508fa905b.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e7508fa905b.png\" alt=\"Desarrollo local para el desarrollador independiente de WordPress\" ><\/a><\/p>\n<p>La parte m\u00e1s dif\u00edcil de instalar un servidor web en su m\u00e1quina local ya est\u00e1 hecha.<\/p>\n<h5>4 Instalar valet<\/h5>\n<p>En este punto, es hora de instalar Valet, que instalar\u00e1 las herramientas necesarias para que su m\u00e1quina act\u00fae como un servidor web local.<\/p>\n<p>Lo m\u00e1s importante a tener en cuenta sobre esto es que cuando lo instala (y se hace a trav\u00e9s de Composer), lo instala globalmente para que sea accesible desde cualquier parte de su sistema. Para hacer esto, <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/426e02bcfc411d43be6715b3e84ead7e#file-05-install-valet-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">ingrese el siguiente comando:<\/a><\/strong><\/p>\n<pre><code>$ composer global require laravel\/valet<\/code><\/pre>\n<p>Una vez hecho esto, puede probar que la instalaci\u00f3n est\u00e1 completa abriendo una terminal y haciendo ping a cualquier URL con un <code>.test<\/code>dominio de nivel superior. <strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/426e02bcfc411d43be6715b3e84ead7e#file-06-test-valet-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Por ejemplo, intente hacer esto:<\/a><\/strong><\/p>\n<p>Y deber\u00edas ver algo como esto:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e75092a4316.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-163367-61e75092a4316.png\" alt=\"Desarrollo local para el desarrollador independiente de WordPress\" ><\/a><\/p>\n<p>Una vez que hayamos terminado de configurar todo esto, configuraremos varios dominios en nuestras m\u00e1quinas para cada uno de nuestros proyectos de WordPress.<\/p>\n<p>Sin embargo, por ahora, hemos hecho todo lo necesario para asegurarnos de que nuestro servidor web est\u00e9 instalado, en funcionamiento y f\u00e1cil de usar a medida que avanzamos al siguiente art\u00edculo.<\/p>\n<h3>\u00bfTareas accionables?<\/h3>\n<p>Lo s\u00e9: anteriormente en la publicaci\u00f3n dije que me gustar\u00eda tener una tarea procesable por art\u00edculo y este en realidad incluye bastantes.<\/p>\n<p>Ser\u00e1 m\u00e1s f\u00e1cil, pero la configuraci\u00f3n inicial siempre requiere un poco m\u00e1s de trabajo que parte del contenido que vendr\u00e1 m\u00e1s adelante. As\u00ed que si llegaste hasta aqu\u00ed, felicidades. \u00a1Sin embargo, a\u00fan no hemos terminado!<\/p>\n<h2>Siguiente: Herramientas de base de datos<\/h2>\n<p>En este punto, tenemos todo lo que necesitamos para alojar un sitio web excepto una base de datos. Debido a que WordPress es una aplicaci\u00f3n web respaldada por una base de datos, necesitamos tener un servidor de base de datos, una base de datos y las herramientas necesarias para interactuar con ella.<\/p>\n<p>En el pr\u00f3ximo art\u00edculo, cubrir\u00e9 exactamente qu\u00e9 es lo que necesitar\u00e1 hacer para instalar y ejecutar una base de datos y c\u00f3mo buscar la informaci\u00f3n que contiene.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fuente de grabaci\u00f3n:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Toda esta serie de publicaciones puede representarse como bloques de construcci\u00f3n, por lo que comenzaremos en el nivel fundamental y trabajaremos hacia arriba comenzando con el desarrollo local.<\/p>\n","protected":false},"author":1,"featured_media":163368,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[892,716,1015,840],"tags":[1172],"class_list":["post-230255","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codigo","category-desarrollador","category-sitios-utiles","category-tutoriales","tag-affiai-es"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/posts\/230255","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/comments?post=230255"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/posts\/230255\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/media\/163368"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/media?parent=230255"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/categories?post=230255"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/tags?post=230255"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}