Drupal https://www.keopx.net/ es [DrupalCampSpain2018] CircleCI https://www.keopx.net/talk/drupalcampspain2018-circleci <span class="field field--name-title field--type-string field--label-hidden">[DrupalCampSpain2018] CircleCI</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Mar, 29/05/2018 - 12:03</span> <div class="clearfix text-formatted 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://twitter.com/juampynr">Juampy</a> para Lullabot: <a href="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="//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="//www.slideshare.net/keopx/drupalcampspain2018-circleci" target="_blank" title="[DrupalCampSpain2018] CircleCI">[DrupalCampSpain2018] CircleCI</a> </strong> from <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <ul> <li><a href="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 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 10:03:34 +0000 keopx 300 at https://www.keopx.net [DrupalCampSpain2018] Trabajando en remoto https://www.keopx.net/talk/drupalcampspain2018-trabajando-en-remoto <span class="field field--name-title field--type-string field--label-hidden">[DrupalCampSpain2018] Trabajando en remoto</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Mar, 29/05/2018 - 11:55</span> <div class="clearfix text-formatted 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> </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 class="text-align-center" 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> <ul> <li><a href="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> </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 09:55:07 +0000 keopx 299 at https://www.keopx.net [DrupalCampSpain2018] Contribuir a Drupal https://www.keopx.net/talk/drupalcampspain2018-contribuir-drupal <span class="field field--name-title field--type-string field--label-hidden">[DrupalCampSpain2018] Contribuir a Drupal</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Mar, 29/05/2018 - 08:53</span> <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:<br /> ▸ Crear las bases para contribuir a Drupal. <br /> ▸ Facilitar recursos para poder comenzar. <br /> ▸ Tener un entorno para poder continuar en el futuro.<br /> ▸ Pautas para no morir en el intento. </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="//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="//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 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> Tue, 29 May 2018 06:53:25 +0000 keopx 298 at https://www.keopx.net Debugging Drush scripts con Xdebug y PhpStorm https://www.keopx.net/blog/debugging-drush-scripts-con-xdebug-y-phpstorm <span class="field field--name-title field--type-string field--label-hidden">Debugging Drush scripts con Xdebug y PhpStorm</span> <div class="clearfix text-formatted 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 class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Mar, 20/06/2017 - 19:32</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 class="field field--name-field-comments field--type-comment field--label-above comment-wrapper"> <h2 class="title comment-form__title">Añadir nuevo comentario</h2> <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> </section> Tue, 20 Jun 2017 17:32:56 +0000 keopx 270 at https://www.keopx.net Cómo instalar y configurar Redis en Drupal 8 https://www.keopx.net/blog/como-instalar-y-configurar-redis-en-drupal-8 <span class="field field--name-title field--type-string field--label-hidden">Cómo instalar y configurar Redis en Drupal 8</span> <div class="clearfix text-formatted 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="//cdn3.keopx.net/sites/default/files/inline-images/Drupal_redis.png" /></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 class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Dom, 18/06/2017 - 17:25</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 class="field field--name-field-comments field--type-comment field--label-above comment-wrapper"> <h2 class="title comment-form__title">Añadir nuevo comentario</h2> <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> </section> Sun, 18 Jun 2017 15:25:35 +0000 keopx 269 at https://www.keopx.net Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao] https://www.keopx.net/talk/docker-entorno-de-trabajo-configurado-en-1-minuto-wcbilbao <span class="field field--name-title field--type-string field--label-hidden">Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Sáb, 13/05/2017 - 16:09</span> <div class="clearfix text-formatted 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://www.keopx.net Contribuir a Drupal, de 0 a 100 https://www.keopx.net/talk/contribuir-drupal-de-0-100 <span class="field field--name-title field--type-string field--label-hidden">Contribuir a Drupal, de 0 a 100</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Sáb, 06/05/2017 - 16:37</span> <div class="clearfix text-formatted 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://www.keopx.net Drupal 8: El poder de webform (antes yamlform) https://www.keopx.net/talk/drupal-8-el-poder-de-webform-antes-yamlform <span class="field field--name-title field--type-string field--label-hidden">Drupal 8: El poder de webform (antes yamlform)</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Sáb, 06/05/2017 - 15:25</span> <div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Drupal 8: <a href="https://2017.drupalcamp.es/sessions/el-poder-de-webform-antes-yamform-regiguren.html">El poder de webform (antes yamlform)</a></p> <p>Sesión realizada en la <a href="https://2017.drupalcamp.es">DrupalCamp</a> 2017 en Madrid.</p> <p class="text-align-center"> <iframe allowfullscreen="true" frameborder="0" height="569" mozallowfullscreen="true" src="https://docs.google.com/presentation/d/1ucPeKBqHsU6oZOZtrprBzx-9FWvh-mSjgWZ55Pb1t-I/embed?start=false&amp;loop=false&amp;delayms=3000" webkitallowfullscreen="true" width="960"></iframe></p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="360" mozallowfullscreen="" src="https://player.vimeo.com/video/218628416" webkitallowfullscreen="" width="640"></iframe></p> <p class="text-align-center"><a href="https://vimeo.com/218628416">El poder de Webform (antes YamlForm) - Ruben Egiguren (keopx) y David Gil</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-8x" hreflang="es">Drupal 8.x</a></div> <div class="field__item"><a href="/categoria/drupal-planeta" hreflang="es">Drupal Planeta</a></div> <div class="field__item"><a href="/categoria/talk" hreflang="es">Talk</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-8x" hreflang="es">Drupal 8.x</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 class="field__item"><a href="/tag/webform" hreflang="es">Webform</a></div> </div> </div> Sat, 06 May 2017 13:25:22 +0000 keopx 273 at https://www.keopx.net Jornada de Contribuir a Drupal en Biko https://www.keopx.net/talk/jornada-de-contribuir-drupal-en-biko <span class="field field--name-title field--type-string field--label-hidden">Jornada de Contribuir a Drupal en Biko</span> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Mar, 25/10/2016 - 16:50</span> <div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>En <a href="http://www.biko2.com/">Biko<sup>2</sup></a> realizamos una <a href="http://www.biko2.com/bikolabs/jornada-de-contribucion-a-drupal/">jornada de contribución a Drupal</a> para internamente poder aportar a la comunidad parte de lo que nos aporta.</p> <p>Tras finalizar la jornada el resultado fue que tuvimos <strong>tres issues fixed</strong> y <strong>dos en RTBC</strong>, de ellas<strong> dos al Core</strong> y <strong>otra a contrib</strong>.</p> <p>Podéis darle un vistazo en:</p> <ul> <li><a href="https://github.com/keopx/docker-drupal-contrib">https://github.com/keopx/docker-drupal-contrib</a></li> </ul> <p>Este entorno contiene unos script para iniciar rápidamente el proyecto:</p> <ul> <li><a href="https://github.com/keopx/docker-drupal-contrib#install-drupal">https://github.com/keopx/docker-drupal-contrib#install-drupal</a></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/feQE7zd6BUc5f3" 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/contribuir-a-drupal-67829228" target="_blank" title="Contribuir a Drupal">Contribuir a Drupal en Biko</a> </strong>de <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" 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/biko" hreflang="es">Biko</a></div> </div> </div> Tue, 25 Oct 2016 14:50:36 +0000 keopx 276 at https://www.keopx.net Drupal 8: View con contenido relacionado filtrado con autocompletado https://www.keopx.net/blog/drupal-8-view-con-contenido-relacionado-filtrado-con-autocompletado <span class="field field--name-title field--type-string field--label-hidden">Drupal 8: View con contenido relacionado filtrado con autocompletado</span> <div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Vamos a ver como crear una <strong>view con contenido relacionado filtrado con autocompletado</strong> en <strong>Drupal 8.</strong></p> <p>He estado varios días dándole vueltas a este caso, probando diferentes módulos etc.</p> <p>Pregunte en los diferentes canales de <a href="https://www.drupal.org/irc">#IRC de Drupal</a> y nadie supo resolverlo, ni siquiera en el equipo dábamos con la opción correcta. Entre los que intentaron ayudarme, gracias por vuestro tiempo, no logramos dar con la solución. Puede que no me explicase bien, suele pasarme.</p> <p>Después de varios intentos fallido me empeñe en mirar en <strong>Relationships</strong> y probar varias opciones hasta que di con ello. Además de esto también es necesario el modulo <a href="https://www.drupal.org/project/views_autocomplete_filters">Views Autocomplete Filters</a>.</p> <p>Como es bastante complicado de explicarlo, me <strong>he creado un vídeo y un módulo</strong> con el ejemplo real para que pueda usarse como base.</p> <p class="text-align-center"> <iframe allowfullscreen="" frameborder="0" height="480" src="https://www.youtube.com/embed/YT3HeSmZW1c" width="853"></iframe></p> <p>El ejemplo esta disponible en github con el nombre <strong>Demo Views Related Content with Automplete Filter</strong>:</p> <ul> <li>Nombre del modulo: <a href="https://github.com/keopx/demo_related_autocomplete">demo_related_autocomplete</a></li> </ul> <p>En caso de tener alguna duda siempre podréis contactarme por el IRC o añadir un comentario.</p> <p>Gracias por vuestro tiempo:</p> <ul> <li><a href="https://www.drupal.org/u/aitor">Aitor Resano</a></li> <li><a href="https://www.drupal.org/u/fernandomagan">Fernando Magan</a></li> <li><a href="https://www.drupal.org/u/marcoscano">Marcos Cano</a></li> <li><a href="https://www.drupal.org/u/jlbellido">Jose Luis Bellido</a></li> <li> <p><a href="https://www.drupal.org/u/jsbalsera">Jesús Sánchez Balsera</a></p> </li> </ul> </div> <span class="field field--name-uid field--type-entity-reference field--label-hidden"><span lang="" about="/users/keopx" typeof="schema:Person" property="schema:name" datatype="">keopx</span></span> <span class="field field--name-created field--type-created field--label-hidden">Sáb, 17/09/2016 - 17:29</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/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/views" hreflang="es">Views</a></div> </div> </div> <section class="field field--name-field-comments field--type-comment field--label-above comment-wrapper"> <h2 class="title">Comentarios</h2> <article role="article" data-comment-user-id="0" id="comment-1820" about="/comment/1820" typeof="schema:Comment" class="comment js-comment by-anonymous clearfix"> <span class="hidden" data-comment-timestamp="1477127810"></span> <footer class="comment__meta"> <article typeof="schema:Person" about="/user/0" class="profile"> </article> <p class="comment__author"><span rel="schema:author"><a rel="nofollow" href="http://ecapy.com" lang="" typeof="schema:Person" property="schema:name" datatype="" class="username">Capy (no verificado)</a></span> </p> <p class="comment__time">Lun, 19/09/2016 - 11:32 <span property="schema:dateCreated" content="2016-09-19T09:32:11+00:00" class="rdf-meta hidden"></span> </p> <p class="comment__permalink"><a href="/comment/1820#comment-1820" hreflang="es">Enlace permanente</a></p> </footer> <div class="comment__content"> <h3 property="schema:name" datatype=""><a href="/comment/1820#comment-1820" class="permalink" rel="bookmark" hreflang="es">Muy buen aporte. Sobre todo…</a></h3> <div property="schema:text" class="clearfix text-formatted field field--name-comment-body field--type-text-long field--label-hidden field__item"><p>Muy buen aporte. Sobre todo la forma en la que se aplican los exposed filters usando arguments. Eso fue nuevo para mi!</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=1820&amp;1=default&amp;2=es&amp;3=" token="CjYchAeWTDYYRW411lOgC_s_qn5Hx74xJWAUt3r5ghI"></drupal-render-placeholder> </div> </article> <article role="article" data-comment-user-id="0" id="comment-3035" about="/comment/3035" typeof="schema:Comment" class="comment js-comment by-anonymous clearfix"> <span class="hidden" data-comment-timestamp="1493460627"></span> <footer class="comment__meta"> <article typeof="schema:Person" about="/user/0" class="profile"> </article> <p class="comment__author"><span rel="schema:author"><span lang="" typeof="schema:Person" property="schema:name" datatype="">Isaw (no verificado)</span></span> </p> <p class="comment__time">Mar, 18/04/2017 - 15:33 <span property="schema:dateCreated" content="2017-04-18T13:33:48+00:00" class="rdf-meta hidden"></span> </p> <p class="comment__permalink"><a href="/comment/3035#comment-3035" hreflang="es">Enlace permanente</a></p> </footer> <div class="comment__content"> <h3 property="schema:name" datatype=""><a href="/comment/3035#comment-3035" class="permalink" rel="bookmark" hreflang="es">Genial!</a></h3> <div property="schema:text" class="clearfix text-formatted field field--name-comment-body field--type-text-long field--label-hidden field__item"><p>Gracias por post!<br /> Me ha resuelto mi problema :-)</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=3035&amp;1=default&amp;2=es&amp;3=" token="9LUv6iaNhDfKgF3fCKxEDLnnuFedfIbfiiXn7irm0MM"></drupal-render-placeholder> </div> </article> <h2 class="title comment-form__title">Añadir nuevo comentario</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=267&amp;2=field_comments&amp;3=comment" token="kEA1cFZdzalf_JIyBC-WFYxvNktoKNcYwm95EV6vqKo"></drupal-render-placeholder> </section> Sat, 17 Sep 2016 15:29:11 +0000 keopx 267 at https://www.keopx.net