Drupal https://keopx.net/ es Drupal Camp Sevilla 2023 https://keopx.net/blog/drupal-camp-sevilla-2023 <span>Drupal Camp Sevilla 2023</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Allá por el año 2011 fue mi segunda experiencia tomando parte en la organización de una DrupalCamp. El primer año 2010 en Barcelona fue increíble el equipo de la organización y el ambiente.</p> <p>Quizás el primer evento importante al que acudí y me causo una grata impresión, dando inicio a la formación de la <a href="https://asociaciondrupal.es/">AED</a> que es el sustento de la DrupalCamp.</p> <p>Volviendo a la DrupalCamp de Sevilla de aquel año recuerdo que fue en un octubre caluroso. Conocí a gente increíble de aquella hermosa ciudad. Cada vez que voy me siento como en casa (menos el calor).</p> <p>Destacaría que entre ambos eventos ha pasado ya una década.</p> <p>El nivel del evento esta a la altura de aquellas que organizan entidades privadas y con animo de lucro.</p> <p>Que ha cambiado, bueno veamos, por partes.</p> <p>El nivel de las sesiones es cada vez más alto sin olvidar que la comunidad y el propio Drupal se han hecho mayores.</p> <p>He visto y reconocido viejas caras, pero también he conocido a gente nueva que se ha acercado por primera vez a tomar contacto con la comunidad. Lo cual, es muy de agradecer.</p> <p>Desgraciadamente no pude estar todo el tiempo que quisiera con esas personas que de una manera u otra han sido y son parte de mi vida. Incluyo a compañeros y ex-compañeros de trabajo, de asociación etc.</p> <p>Como no, siempre habrá quejas, pero este año me he centrado en que es lo que ha salido bien y las cosas que se podrían mejorar para años venideros. Esperando a dar feedback oficial a la organización.</p> <p>La actitud de la organización ha sido de 10, proactiva e intentando solucionar los inconvenientes lo antes posible.</p> <p>En cuanto a los tracks, nuevamente más nivel y más nivel, año tras año. Genial.</p> <p>Destacaría algunas, pero parecería que soy el colega "cuñao" hooligan.</p> <p>Solo os recomendaría esperar a que se publiquen las sesiones en diferentes canales y gocéis.</p> <ul><li><a href="https://vimeo.com/drupales/">https://vimeo.com/drupales/</a></li> <li><a href="https://www.youtube.com/@drupalespana6478/featured">https://www.youtube.com/@drupalespana6478/featured</a></li> </ul><p>Espero volver ha veros pronto.</p> <p>Gracias a toda esa gente que se ha involucrado :)</p> </div> <span><span>keopx</span></span> <span><time datetime="2023-09-28T17:19:47+02:00" title="Jueves, Septiembre 28, 2023 - 17:19">Jue, 28/09/2023 - 17:19</time> </span> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/drupalcamp" hreflang="es">DrupalCamp</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> </div> </div> <section data-drupal-selector="comments" class="comments"> <h2 class="comments__title">Comentarios</h2> <div class="add-comment"> <div class="add-comment__form"> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=311&amp;2=field_comments&amp;3=comment" token="b1ZWNOCXwQ7ph7fj0lPD2Q-GSnuqJBXwcLIOdI8EN9A"></drupal-render-placeholder> </div> </div> </section> Thu, 28 Sep 2023 15:19:47 +0000 keopx 311 at https://keopx.net [DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10 https://keopx.net/talk/drupalcampspain2023-introduccion-al-desarrollo-de-modulos-en-drupal-10 <span>[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10</span> <span><span>keopx</span></span> <span><time datetime="2023-09-23T10:30:00+02:00" title="Sábado, Septiembre 23, 2023 - 10:30">Sáb, 23/09/2023 - 10:30</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Taller realizado en la <a href="https://2023.drupalcamp.es/es/el-programa">DrupalCamp Spain de 2023</a> centrado en el desarrollo para <a href="https://www.drupal.org">Drupal</a> 10. En el taller se mostrara la creación de un modulo básico, veremos ejemplos existentes y como poder aprovecharlos para hacer nuestros desarrollos a medida.</p> <p>Se explicara por encima algunos conceptos.</p> <p>Puedes facilitar lo que deseas encontrarte en el taller, de esta manera intentare <strong>ajustarme a lo que los asistentes</strong> desearían conocer :)</p> <ul><li><strong>Formulario</strong>:<a href="https://docs.google.com/forms/d/e/1FAIpQLSdCblnLhdSCxtrG1gbiBJbQ7baZNH3x6yBFlL9lJpn5LCxnwQ/viewform"> formulario</a></li> </ul><p>Sera necesario tener instalado el entorno de desarrollo, un entorno con Drupal en Docker (Lando, Ddev, Docker4Drupal), LAMP, MAMP, WAMP o similar para poder trabajar.</p> <p>Se proporciona una OVA (VirtualBox 7) para facilitar el desarrollo.</p> <p><strong>Recomendación</strong>:</p> <ul><li><span>Drupal 10. Instalado y funcionando.</span></li> <li><span>IDE de desarrollo. En la maquina virtual estara disponible Code.</span></li> <li><span>Se recomienda usar la maquina virtual para facilitar la sesión.</span></li> </ul><p>Algunos módulos que veremos, por ello es aconsejable instalarlos.</p> <ul><li>Modulo Devel</li> <li>Modulo Coder</li> <li>Módulo Examples</li> </ul><p>Están disponibles maquinas virtuales o instaladores para facilitar:</p> <ul><li>Docker (+ Lando) / Maquina virtual (VirtualBox 7)</li> <li><a href="http://drupalcamp2023.keopx.net/">http://drupalcamp2023.keopx.net/</a> (recomendado)</li> </ul><p>Presentación</p> <ul><li><a href="http://drupalcamp2023.keopx.net/">http://drupalcamp2023.keopx.net/</a></li> </ul><p class="text-align-center"> </p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="486" marginheight="0" marginwidth="0" scrolling="no" src="https://www.slideshare.net/slideshow/embed_code/key/wPrv0ucclsUSxV?startSlide=1" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px;max-width: 100%;" width="597"></iframe></p> <div class="text-align-center" style="margin-bottom:5px"><strong><a href="https://www.slideshare.net/keopx/drupalcampspain2023-introduccin-al-desarrollo-de-mdulos-en-drupal-10" target="_blank" title="[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10">[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10</a></strong> from <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <p> </p> </div> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal-10" hreflang="es">Drupal 10</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/desarrollo" hreflang="es">Desarrollo</a></div> <div class="field__item"><a href="/tag/drupalcamp" hreflang="es">DrupalCamp</a></div> <div class="field__item"><a href="/tag/modules" hreflang="es">Modules</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/contribuir" hreflang="es">Contribuir</a></div> <div class="field__item"><a href="/tag/drupal-10" hreflang="es">Drupal 10</a></div> </div> </div> Sat, 23 Sep 2023 08:30:00 +0000 keopx 310 at https://keopx.net [DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9 https://keopx.net/talk/drupalcampspain2022-introduccion-al-desarrollo-de-modulos-en-drupal-9 <span>[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9</span> <span><span>keopx</span></span> <span><time datetime="2022-06-04T18:30:00+02:00" title="Sábado, Junio 4, 2022 - 18:30">Sáb, 04/06/2022 - 18:30</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Taller realizado en la <a href="https://2022.drupalcamp.es/sessions/tallerworkshop-introduccion-al-desarrollo-de-modulos-en-drupal-9">DrupalCamp Spain de 2022</a> centrado en el desarrollo para <a href="https://www.drupal.org">Drupal</a> 9. En el taller se mostrara la creación de un modulo básico, veremos ejemplos existentes y como poder aprovecharlos para hacer nuestros desarrollos a medida.</p> <p>Se explicara por encima algunos conceptos.</p> <p>Puedes facilitar lo que deseas encontrarte en el taller, de esta manera intentare <strong>ajustarme a lo que los asistentes</strong> desearían conocer :)</p> <ul><li><strong>Formulario</strong>:<a href="https://docs.google.com/forms/d/e/1FAIpQLSdCblnLhdSCxtrG1gbiBJbQ7baZNH3x6yBFlL9lJpn5LCxnwQ/viewform"> formulario</a></li> </ul><p>Sera necesario tener instalado el entorno de desarrollo, un entorno con Drupal en Docker (Lando, Ddev, Docker4Drupal), LAMP, MAMP, WAMP o similar para poder trabajar.</p> <p>Se proporciona una OVA (VirtualBox 6.1) para facilitar el desarrollo.</p> <p><strong>Recomendación</strong>:</p> <ul><li><span>Drupal 9. Instalado y funcionando.</span></li> <li><span>IDE de desarrollo. En la maquina virtual estara disponible Code.</span></li> <li><span>Se recomienda usar la maquina virtual para facilitar la sesión.</span></li> </ul><p>Algunos módulos que veremos, por ello es aconsejable instalarlos.</p> <ul><li>Modulo Devel</li> <li>Modulo Coder</li> <li>Módulo Examples</li> </ul><p>Están disponibles maquinas virtuales o instaladores para facilitar:</p> <ul><li>Docker (+ Lando) / Maquina virtual (VitualBox 6.1)</li> <li><a href="http://drupalcamp2022.keopx.net/">http://drupalcamp2022.keopx.net/</a> (recomendado)</li> </ul><p>Presentación</p> <ul><li><a href="http://drupalcamp2022.keopx.net/">http://drupalcamp2022.keopx.net/</a></li> </ul><p> </p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="485" marginheight="0" marginwidth="0" scrolling="no" src="//www.slideshare.net/slideshow/embed_code/key/fbXuPOFjqfMgWT" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" width="595"></iframe></p> <div class="text-align-center" style="margin-bottom:5px"><strong><a href="//www.slideshare.net/keopx/drupalcampspain2022-introduccin-al-desarrollo-de-mdulos-en-drupal-9" target="_blank" title="[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9">[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9</a> </strong> from <strong><a href="//www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <p> </p> </div> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal-9" hreflang="es">Drupal 9</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/desarrollo" hreflang="es">Desarrollo</a></div> <div class="field__item"><a href="/tag/drupalcamp" hreflang="es">DrupalCamp</a></div> <div class="field__item"><a href="/tag/drupal-9" hreflang="es">Drupal 9</a></div> <div class="field__item"><a href="/tag/modules" hreflang="es">Modules</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/contribuir" hreflang="es">Contribuir</a></div> </div> </div> Sat, 04 Jun 2022 16:30:00 +0000 keopx 309 at https://keopx.net [DrupalCampSpain2018] CircleCI https://keopx.net/talk/drupalcampspain2018-circleci <span> [DrupalCampSpain2018] CircleCI</span> <span><span>keopx</span></span> <span><time datetime="2018-05-29T11:15:43+02:00" title="Martes, Mayo 29, 2018 - 11:15">Mar, 29/05/2018 - 11:15</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><div class="text-content field field--name-body field--type-text-with-summary field--label-hidden field__item"> <p>Una breve entrada a CircleCI y como implementarla en nuestros proyectos de Drupal 8.</p> <p>Veremos como podemos apoyarnos en herramientas adicionales como Robo, Docker, etc. para facilitar algunas de las tareas y procesos.</p> <p>Me basaré en el ejemplo que publico <a href="https://web.archive.org/web/20210118105804/https://twitter.com/juampynr">Juampy</a> para Lullabot: <a href="https://web.archive.org/web/20210118105804/https://www.lullabot.com/articles/continuous-integration-drupal-8-circleci">https://www.lullabot.com/articles/continuous-integration-drupal-8-circleci</a></p> <p>También comentare algunos tips que he visto y que pueden ayudar a facilitar el entendimiento.</p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="485" marginheight="0" marginwidth="0" scrolling="no" src="https://web.archive.org/web/20210118105804if_/https://www.slideshare.net/slideshow/embed_code/key/j4xn9pTVmhPRz8" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" width="595"></iframe></p> <div class="text-align-center" style="margin-bottom:5px"><strong><a href="https://www.slideshare.net/keopx/drupalcampspain2018-circleci" target="_blank" title="[DrupalCampSpain2018] CircleCI">[DrupalCampSpain2018] CircleCI</a> </strong> from <strong><a href="https://web.archive.org/web/20210118105804/https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <p>Presentación:</p> <ul><li><a href="https://web.archive.org/web/20210118105804/https://2018.drupalcamp.es/sessions/integracion-continua-con-circleci-para-drupal-8-regiguren">https://2018.drupalcamp.es/sessions/integracion-continua-con-circleci-para-drupal-8-regiguren</a></li> </ul></div> </div> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> <div class="field__item"><a href="/categoria/circleci" hreflang="es">CircleCI</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/drupalcamp" hreflang="es">DrupalCamp</a></div> <div class="field__item"><a href="/tag/integracion-continua" hreflang="es">Integración continua</a></div> <div class="field__item"><a href="/tag/robo" hreflang="es">Robo</a></div> <div class="field__item"><a href="/tag/behat" hreflang="es">Behat</a></div> <div class="field__item"><a href="/tag/drush" hreflang="es">Drush</a></div> <div class="field__item"><a href="/tag/docker" hreflang="es">Docker</a></div> </div> </div> Tue, 29 May 2018 09:15:43 +0000 keopx 300 at https://keopx.net [DrupalCampSpain2018] Trabajando en remoto https://keopx.net/talk/drupalcampspain2018-trabajando-en-remoto <span>[DrupalCampSpain2018] Trabajando en remoto</span> <span><span>keopx</span></span> <span><time datetime="2018-05-29T10:53:10+02:00" title="Martes, Mayo 29, 2018 - 10:53">Mar, 29/05/2018 - 10:53</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>En esta charla trataremos el trabajo en remoto desde tres puntos de vista:</p> <ul><li>El responsable de IT que trabaja habitualmente con desarrolladores en remoto.</li> <li>El desarrollador en remoto que trabaja dentro de un equipo que no es 100% distribuido.</li> <li>El desarrollador en remoto que trabaja en una empresa 100% distribuida.</li> </ul><p>Las tres personas aportarán su experiencia y contarán los puntos a tener en cuenta a la hora comenzar a trabajar con desarrolladores remotos o en remoto como desarrollador.</p> <p>Además hablarán como con la apropiada comunicación y definición de responsabilidades se puede incrementar significativamente la calidad del trabajo. Así como el incremento de posibilidades a la hora tanto de contratar desarrolladores como de buscar un trabajo al eliminar la barrera que supone el vivir en otra ciudad.</p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="485" marginheight="0" marginwidth="0" scrolling="no" src="//www.slideshare.net/slideshow/embed_code/key/g4x03Xdrdo0yNF" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" width="595"></iframe></p> <div style="margin-bottom:5px"><strong><a href="//www.slideshare.net/keopx/drupalcampspain2018-trabajando-en-remoto" target="_blank" title="[DrupalCampSpain2018] Trabajando en remoto">[DrupalCampSpain2018] Trabajando en remoto</a> </strong> from <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <p>Presentación:</p> <ul><li><a href="https://web.archive.org/web/20210118105944/https://2018.drupalcamp.es/sessions/el-trabajo-en-remoto-desde-diferentes-puntos-de-vista">https://2018.drupalcamp.es/sessions/el-trabajo-en-remoto-desde-diferentes-puntos-de-vista</a></li> </ul><p> </p> </div> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/drupalcamp" hreflang="es">DrupalCamp</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/remoto" hreflang="es">Remoto</a></div> </div> </div> Tue, 29 May 2018 08:53:10 +0000 keopx 299 at https://keopx.net [DrupalCampSpain2018] Contribuir a Drupal https://keopx.net/talk/drupalcampspain2018-contribuir-drupal <span>[DrupalCampSpain2018] Contribuir a Drupal</span> <span><span>keopx</span></span> <span><time datetime="2018-05-29T09:53:21+02:00" title="Martes, Mayo 29, 2018 - 09:53">Mar, 29/05/2018 - 09:53</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"> <p>Guía para comenzar a contribuir en <a href="https://www.drupal.org/">Drupal</a></p> <p>Objetivo:</p> <ul><li>Crear las bases para contribuir a Drupal. </li> <li>Facilitar recursos para poder comenzar. </li> <li>Tener un entorno para poder continuar en el futuro.</li> <li>Pautas para no morir en el intento. </li> </ul><p>Presentación:</p> <ul><li><a href="https://2018.drupalcamp.es/sessions/contribuir-drupal-por-donde-comenzar-de-0-100-regiguren">https://2018.drupalcamp.es/sessions/contribuir-drupal-por-donde-comenzar-de-0-100-regiguren</a></li> </ul><p> </p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="485" marginheight="0" marginwidth="0" scrolling="no" src="https://www.slideshare.net/slideshow/embed_code/key/v8ZTvlVkTzmZlz" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" width="595"></iframe></p> <div class="text-align-center" style="margin-bottom:5px"><strong><a href="https://www.slideshare.net/keopx/drupalcampspain2018-contribuir-a-drupal" target="_blank" title="[DrupalCampSpain2018] Contribuir a Drupal">[DrupalCampSpain2018] Contribuir a Drupal</a> </strong> de <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> </div> </div> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/contribuir" hreflang="es">Contribuir</a></div> <div class="field__item"><a href="/tag/drupalcamp" hreflang="es">DrupalCamp</a></div> </div> </div> Tue, 29 May 2018 07:53:21 +0000 keopx 298 at https://keopx.net Debugging Drush scripts con Xdebug y PhpStorm https://keopx.net/blog/debugging-drush-scripts-con-xdebug-y-phpstorm <span>Debugging Drush scripts con Xdebug y PhpStorm</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Para configurar correctamente un entornos para depurar con <a href="https://xdebug.org/">Xdebug</a> y <a href="https://www.jetbrains.com/phpstorm/">PhpStorm</a> los comandos <a href="https://github.com/drush-ops/drush">Drush</a> es necesario realizar una serie de configuración especifica.</p> <ul><li>Configurar una <strong><em>PHP Web Application</em> </strong>para depurar por la línea de comandos.</li> <li>Todo el código ejecutado debe estar disponible en el proyecto, incluyendo <strong>drush</strong>. <ul><li>Ej. Instalando drush como dependencia de composer (también, recuerde ejecutar drush desde su proyecto).</li> </ul></li> <li>Habilitar depuración <strong>xdebug</strong> para la línea de comandos.</li> </ul><pre> <code class="language-bash">sudo phpenmod xdebug</code></pre><ul><li>Un enlace simbólico de xdebug.ini de mi directorio<em> /etc/php/7.0/cli/conf.d</em> como estaba usando en <em>/etc/php/7.0/apache/conf.d</em> para la depuración web.</li> <li> <ul></ul><p> Ejemplo de configuración:</p></li> </ul><pre> <code class="language-bash">sudo vi /etc/php/7.0/cli/conf.d/20-xdebug.ini</code></pre><p>Y añadimos:</p> <pre> <code class="language-ini">zend_extension=xdebug.so xdebug.remote_connect_back = 1 xdebug.default_enable = 1 xdebug.remote_autostart = 1 xdebug.remote_enable = 1 xdebug.remote_port = 9000 xdebug.remote_handler = dbgp xdebug.max_nesting_level = 500 xdebug.idekey = PHPSTORM xdebug.profiler_enable_trigger = 1</code></pre><p>Utilice el botón "<strong>Listen for PHP Debug connections</strong>" de <strong>PhpStorm</strong>:</p> <ul><li>Establezca el cliente de depuración remota en la línea de comandos utilizando:</li> <li>Editamos ~/.bashrc y añadimos:</li> </ul><pre> <code class="language-bash"># PHPstorm drush debug export XDEBUG_CONFIG="idekey=PHPSTORM" </code></pre><ul><li>Establezca la configuración del servidor. Asegúrese de que el nombre que utiliza coincide con el nombre del servidor que configuró en PhpStorm: <ul><li>PHP_IDE_CONFIG = PHPSTORM</li> </ul></li> <li>Ejecute drush.</li> </ul><p>Si quereis correr <a href="https://xdebug.org/">Xdebug</a> con <a href="https://www.docker.com/">Docker</a> y/o <a href="https://www.vagrantup.com/">Vagrant</a> os recomiendo este post: <a href="http://blokspeed.net/blog/2016/02/debugging-drush-scripts-with-xdebug-and-phpstorm-on-vagrant-in-2016/">http://blokspeed.net/blog/2016/02/debugging-drush-scripts-with-xdebug-and-phpstorm-on-vagrant-in-2016/</a></p> <p>La verdad es que no recordaba como se configuraba el Xdebug para PhpStorm y Drush y gracias a <a href="https://twitter.com/jansev3n">Juanen</a> (<a href="https://www.drupal.org/u/jansete">jansete en Drupal</a>) me he vuelto a ponermelo bien y que menos que contribuirlo :D</p> </div> <span><span>keopx</span></span> <span><time datetime="2017-06-20T19:32:56+02:00" title="Martes, Junio 20, 2017 - 19:32">Mar, 20/06/2017 - 19:32</time> </span> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-8x" hreflang="es">Drupal 8.x</a></div> <div class="field__item"><a href="/categoria/drush" hreflang="es">Drush</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/drush" hreflang="es">Drush</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/drupal-8x" hreflang="es">Drupal 8.x</a></div> <div class="field__item"><a href="/tag/drupal-7x" hreflang="es">Drupal 7.x</a></div> <div class="field__item"><a href="/tag/xdebug" hreflang="es">Xdebug</a></div> <div class="field__item"><a href="/tag/debug" hreflang="es">debug</a></div> <div class="field__item"><a href="/tag/phpstorm" hreflang="es">PhpStorm</a></div> </div> </div> <section data-drupal-selector="comments" class="comments"> <h2 class="comments__title">Comentarios</h2> <div class="add-comment"> <div class="add-comment__form"> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=270&amp;2=field_comments&amp;3=comment" token="wgGKbiUh3crzk0RxGFdWGRUMK3JE0HDt8lHarEqlY3Q"></drupal-render-placeholder> </div> </div> </section> Tue, 20 Jun 2017 17:32:56 +0000 keopx 270 at https://keopx.net Cómo instalar y configurar Redis en Drupal 8 https://keopx.net/blog/como-instalar-y-configurar-redis-en-drupal-8 <span>Cómo instalar y configurar Redis en Drupal 8</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Voy a explicar cómo <strong>instalar y configurar Redis en Drupal 8.</strong> </p> <p>Redis es una base de datos popular basado en key-value.</p> <p>En el caso de <a href="https://www.drupal.org">Drupal</a> se usa como sistema de cache para la parte (backend) de gestión de contenidos, donde el sistema de cachea "estático" de las paginas no es suficiente.</p> <p>Con Redis notaremos rápidamente la fluidez y rapidez con la que se puede gestionar toda la parte que requiere de usuarios autenticados.</p> <ol><li>Instalar <em>Redis</em>:<br /><pre> <code class="language-bash">sudo apt-get install redis-server</code></pre><p>También puedes ver <a href="https://github.com/keopx/docker-redis/blob/master/3.2/Dockerfile">Dockerfile</a></p> </li> <li>Instalar soporte de <em>Redis</em> para PHP:<br /><pre> <code class="language-bash">sudo apt-get install php7.0-redis sudo a2enmod php7.0-redis</code></pre><p>También puedes ver <a href="https://github.com/keopx/docker-apache-php/blob/master/7.0/Dockerfile">Dockerfile</a></p> </li> <li>Instalar el modulo <em>redis</em> de <em>Drupal</em>:<br /><pre> <code class="language-bash">composer require drupal/redis</code></pre><p>o</p> <pre> <code class="language-bash">drush dl redis</code></pre></li> <li> <p>Configurar <strong>redis</strong> para <strong>Drupal</strong>:</p> </li> </ol><p>En el <strong>settings.php</strong> o mejor en el drush añadir lo siguiente:</p> <pre> <code class="language-php">&lt;?php /** * Set redis configuration. */ /** @see: https://docs.platform.sh/frameworks/drupal8/redis.html */ if (extension_loaded('redis')) { // Set Redis as the default backend for any cache bin not otherwise specified. // $settings['cache']['default'] = 'cache.backend.redis'; $settings['redis.connection']['interface'] = 'PhpRedis'; // Can be "Predis". $settings['redis.connection']['host'] = 'redis'; $settings['redis.connection']['port'] = '6379'; // $settings['redis.connection']['password'] = "mypassword"; // If you are using passwords, otherwise, omit // Apply changes to the container configuration to better leverage Redis. // This includes using Redis for the lock and flood control systems, as well // as the cache tag checksum. Alternatively, copy the contents of that file // to your project-specific services.yml file, modify as appropriate, and // remove this line. $settings['container_yamls'][] = 'modules/contrib/redis/example.services.yml'; // Allow the services to work before the Redis module itself is enabled. $settings['container_yamls'][] = 'modules/contrib/redis/redis.services.yml'; // Manually add the classloader path, this is required for the container cache bin definition below // and allows to use it without the redis module being enabled. $class_loader-&gt;addPsr4('Drupal\\redis\\', 'modules/contrib/redis/src'); // Use redis for container cache. // The container cache is used to load the container definition itself, and // thus any configuration stored in the container itself is not available // yet. These lines force the container cache to use Redis rather than the // default SQL cache. $settings['bootstrap_container_definition'] = [ 'parameters' =&gt; [], 'services' =&gt; [ 'redis.factory' =&gt; [ 'class' =&gt; 'Drupal\redis\ClientFactory', ], 'cache.backend.redis' =&gt; [ 'class' =&gt; 'Drupal\redis\Cache\CacheBackendFactory', 'arguments' =&gt; ['@redis.factory', '@cache_tags_provider.container', '@serialization.phpserialize'], ], 'cache.container' =&gt; [ 'class' =&gt; '\Drupal\redis\Cache\PhpRedis', 'factory' =&gt; ['@cache.backend.redis', 'get'], 'arguments' =&gt; ['container'], ], 'cache_tags_provider.container' =&gt; [ 'class' =&gt; 'Drupal\redis\Cache\RedisCacheTagsChecksum', 'arguments' =&gt; ['@redis.factory'], ], 'serialization.phpserialize' =&gt; [ 'class' =&gt; 'Drupal\Component\Serialization\PhpSerialize', ], ], ]; /** Optional prefix for cache entries */ $settings['cache_prefix'] = 'any-text-you-want'; /** @see: https://pantheon.io/docs/redis/ */ // Always set the fast backend for bootstrap, discover and config, otherwise // this gets lost when redis is enabled. $settings['cache']['bins']['bootstrap'] = 'cache.backend.chainedfast'; $settings['cache']['bins']['discovery'] = 'cache.backend.chainedfast'; $settings['cache']['bins']['config'] = 'cache.backend.chainedfast'; /** @see: https://github.com/md-systems/redis */ // Use for all bins otherwise specified. $settings['cache']['default'] = 'cache.backend.redis'; // Use this to only use it for specific cache bins. $settings['cache']['bins']['render'] = 'cache.backend.redis'; // Use for all queues unless otherwise specified for a specific queue. $settings['queue_default'] = 'queue.redis'; // Or if you want to use reliable queue implementation. $settings['queue_default'] = 'queue.redis_reliable'; // Use this to only use Redis for a specific queue (aggregator_feeds in this case). $settings['queue_service_aggregator_feeds'] = 'queue.redis'; // Or if you want to use reliable queue implementation. $settings['queue_service_aggregator_feeds'] = 'queue.redis_reliable'; } </code></pre><p>Ver <a href="https://gist.github.com/keopx/7d5fe4d7a890c792c43bb79cf56718e0">https://gist.github.com/keopx/7d5fe4d7a890c792c43bb79cf56718e0</a></p> <p>Una ves hecho esto ir a la pagina de estado (<em>/admin/reports/status</em>) para comprobar que todo esta bien.</p> <p><img alt="Drupal Redis Setup" data-entity-type="file" data-entity-uuid="54abaecf-03e5-4c6e-8bfe-f1e23743c011" src="/sites/default/files/inline-images/Drupal_redis.png" width="587" height="68" /></p> <p>NOTA: si veis que cualquier parametrización es mejor, por favor comentadlo. Gracias.</p> <p>Referencias:</p> <ul><li><a href="https://gist.github.com/keopx/7d5fe4d7a890c792c43bb79cf56718e0">https://gist.github.com/keopx/7d5fe4d7a890c792c43bb79cf56718e0</a></li> <li><a href="https://docs.platform.sh/frameworks/drupal8/redis.html">https://docs.platform.sh/frameworks/drupal8/redis.html</a></li> <li><a href="https://pantheon.io/docs/redis/">https://pantheon.io/docs/redis/</a></li> <li><a href="https://github.com/md-systems/redis">https://github.com/md-systems/redis</a></li> <li><a href="https://github.com/keopx/docker-lamp">https://github.com/keopx/docker-lamp</a></li> </ul><p> </p> <p> </p> </div> <span><span>keopx</span></span> <span><time datetime="2017-06-18T17:25:35+02:00" title="Domingo, Junio 18, 2017 - 17:25">Dom, 18/06/2017 - 17:25</time> </span> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal-8x" hreflang="es">Drupal 8.x</a></div> <div class="field__item"><a href="/categoria/redis" hreflang="es">Redis</a></div> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/drupal-8x" hreflang="es">Drupal 8.x</a></div> <div class="field__item"><a href="/tag/redis" hreflang="es">Redis</a></div> <div class="field__item"><a href="/tag/php" hreflang="es">php</a></div> </div> </div> <section data-drupal-selector="comments" class="comments"> <h2 class="comments__title">Comentarios</h2> <div class="add-comment"> <div class="add-comment__form"> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=269&amp;2=field_comments&amp;3=comment" token="qCV33nxDY_ejWnQ4sUSyDpnaLr7joysNjRbFgsrijWE"></drupal-render-placeholder> </div> </div> </section> Sun, 18 Jun 2017 15:25:35 +0000 keopx 269 at https://keopx.net Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao] https://keopx.net/talk/docker-entorno-de-trabajo-configurado-en-1-minuto-wcbilbao <span>Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]</span> <span><span>keopx</span></span> <span><time datetime="2017-05-13T16:09:25+02:00" title="Sábado, Mayo 13, 2017 - 16:09">Sáb, 13/05/2017 - 16:09</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p><a href="https://2017.bilbao.wordcamp.org/programa/">Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]</a></p> <p>Hablaremos de:</p> <ul><li>¿Qué es Docker?</li> <li>Ventajas de trabajar con Docker (vs VM)</li> <li>Instalación de Docker</li> <li>Componentes de Docker</li> <li>Principales comandos de Docker</li> <li>Docker-Compose</li> <li>Introducción a DockerHub</li> <li>DevOps</li> <li>Cómo usarlo en el día a día.</li> <li>Demo time.</li> </ul><p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="485" marginheight="0" marginwidth="0" scrolling="no" src="//www.slideshare.net/slideshow/embed_code/key/IhCNZCNJuoRy4m" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" width="595"></iframe></p> <div class="text-align-center" style="margin-bottom:5px"><strong><a href="//www.slideshare.net/keopx/docker-entorno-de-trabajo-configurado-en-1-minuto-wcbilbao" target="_blank" title="Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]">Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]</a> </strong> de <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> </div> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/wordpress" hreflang="es">WordPress</a></div> <div class="field__item"><a href="/categoria/wordcamp" hreflang="es">WordCamp</a></div> <div class="field__item"><a href="/categoria/docker" hreflang="es">Docker</a></div> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/wordpress" hreflang="es">WordPress</a></div> <div class="field__item"><a href="/tag/wordcamp" hreflang="es">WordCamp</a></div> <div class="field__item"><a href="/tag/docker" hreflang="es">Docker</a></div> <div class="field__item"><a href="/tag/devops" hreflang="es">DevOps</a></div> <div class="field__item"><a href="/tag/wcbilbao" hreflang="es">WCBilbao</a></div> </div> </div> Sat, 13 May 2017 14:09:25 +0000 keopx 274 at https://keopx.net Contribuir a Drupal, de 0 a 100 https://keopx.net/talk/contribuir-drupal-de-0-100 <span>Contribuir a Drupal, de 0 a 100</span> <span><span>keopx</span></span> <span><time datetime="2017-05-06T16:37:07+02:00" title="Sábado, Mayo 6, 2017 - 16:37">Sáb, 06/05/2017 - 16:37</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p><a href="https://2017.drupalcamp.es/sessions/contribuir-drupal-por-donde-comenzar-de-0-100-regiguren">Contribuir a Drupal, de 0 a 100, por donde empezar</a></p> <p>Suele suceder que cuando queremos contribuir a Drupal, no solemos encontrar los recursos necesarios para comenzar a contribuir. En esta presentación se pretende iniciar a la gente explicando cual es la mejor forma de comenzar y facilitar los recursos para el aprendizaje sin morir en el intento.</p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="485" marginheight="0" marginwidth="0" scrolling="no" src="//www.slideshare.net/slideshow/embed_code/key/hLXeOBWMOYluOE" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" width="595"></iframe></p> <div class="text-align-center" style="margin-bottom:5px"><strong><a href="//www.slideshare.net/keopx/drupal-campspain2017-contribuir-a-drupal-de-0-a-100" target="_blank" title="[Drupal campspain2017] Contribuir a Drupal, de 0 a 100">Contribuir a Drupal, de 0 a 100</a> </strong> de <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="540" mozallowfullscreen="" src="https://player.vimeo.com/video/218626931" webkitallowfullscreen="" width="960"></iframe></p> <p class="text-align-center"><a href="https://vimeo.com/218626931">Contribuir a Drupal de 0 a 100 - Rubén Egiguren #DrupalCampES</a></p> </div> <div class="field field--name-field-tax-cat field--type-entity-reference field--label-above"> <div class="field__label">Categoria</div> <div class="field__items"> <div class="field__item"><a href="/categoria/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> </div> </div> <div class="field field--name-field-tax-tag field--type-entity-reference field--label-above"> <div class="field__label">Tag</div> <div class="field__items"> <div class="field__item"><a href="/tag/contribuir" hreflang="es">Contribuir</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/drupalcamp" hreflang="es">DrupalCamp</a></div> </div> </div> Sat, 06 May 2017 14:37:07 +0000 keopx 275 at https://keopx.net