Drupal 7.x https://keopx.net/ es Drupal Template Helper para Drupal 8 https://keopx.net/blog/drupal-template-helper-para-drupal-8 <span>Drupal Template Helper para Drupal 8</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p><strong>Drupal Template Helper</strong> sirve para destacar las plantillas twig sugeridas en cada caso y el preprocess a utilizar.</p> <p>Esta herramienta es muy cómoda y sencilla de utilizar, facilita muchísimo el poder encontrar las plantillas que son necesarias para cada caso y saber ademas que las esta utilizando.</p> <p>Recordad que es necesario limpiar la cache tras añadir una nueva plantilla para que Drupal sea capaz de reconocer dicho fichero.</p> <p>Este post es únicamente un traducción de la documentación oficial: <a href="https://github.com/arshad/drupal-template-helper">https://github.com/arshad/drupal-template-helper</a></p> <h2>Drupal Template Helper</h2> <p>Es una extensión de <em>Chrome DevTools</em> para las plantillas de Drupal 8, Drupal 7 y Backdrop CMS: <a href="https://chrome.google.com/webstore/detail/ppiceaegogijpjodfpiimifhbnaifbnn">https://chrome.google.com/webstore/detail/ppiceaegogijpjodfpiimifhbnaifbnn</a></p> <p><a href="https://cloud.githubusercontent.com/assets/124599/14293486/d561f37e-fb7d-11e5-8ed0-952d520678a4.png" target="_blank"><img alt="drupal-template-helper" src="https://cloud.githubusercontent.com/assets/124599/14293486/d561f37e-fb7d-11e5-8ed0-952d520678a4.png" /></a></p> <h3>Instalación</h3> <h5>PASO 1: InstalAR Y configurAR.</h5> <ol><li>Descargue e instale la extensión <em>Drupal Template Helper</em> para <em>Chrome</em>.</li> <li>Haga clic en el icono de la extensión.</li> <li>Haga clic en <em>Opciones</em> bajo <strong>Drupal Template Helper</strong>.</li> <li>Agregue las URL de los sitios para habilitar la extensión. Ejemplo: <a href="http://drupal.dev">http://drupal.dev</a>, <a href="http://www.drupal.dev">http://www.drupal.dev</a>.</li> <li>Guardar.</li> </ol><h5>PASO 2: HABILITAR LA API EXPERIMENTAL DEL CHROME.</h5> <ol><li>Ve a <em>chrome://flags/#enable-devtools-experiments</em>, busca <strong>Experimental Extension APIs</strong> y <strong>Developer Tools experiments</strong>, hacer click en "<em>Enable</em>" enlaces, y reinicia Chrome.</li> <li>Abrir <em>DevTools</em> y hacer click en <em>Settings</em>.</li> <li>Busca en la pestaña <strong>Experiments</strong> y activa <strong>Allow custom UI themes</strong>. Ver la siguiente captura. No olvides reiniciar nuevamente Chrome.</li> </ol><p><a href="https://cloud.githubusercontent.com/assets/124599/14293054/e6350e72-fb7b-11e5-973a-31794db51e4d.png" target="_blank"><img alt="drupal-template-devtools-theme-ui" src="https://cloud.githubusercontent.com/assets/124599/14293054/e6350e72-fb7b-11e5-973a-31794db51e4d.png" /></a></p> <p>Nota: Si desea ocultar los comentarios de Twig, desactive <strong>Show HTML comments</strong> en <strong>Preferences</strong>.</p> <p><a href="https://cloud.githubusercontent.com/assets/124599/21719927/b5c16cb2-d439-11e6-8cc7-a84192aa822a.png" target="_blank"><img alt="drupal-template-devtools-preferences" src="https://cloud.githubusercontent.com/assets/124599/21719927/b5c16cb2-d439-11e6-8cc7-a84192aa822a.png" /></a></p> <h5>PASO 3: HABILITAR EL TEMA DEBUG</h5> <ul><li>Para Drupal 8, ver el articulo de Phil's article: <a href="https://www.chapterthree.com/blog/drupal-8-theming-setting-theme-debugging">https://www.chapterthree.com/blog/drupal-8-theming-setting-theme-debugging</a></li> <li>Para Drupal 7, ver <a href="https://www.drupal.org/node/223440">https://www.drupal.org/node/223440</a>.</li> </ul><h3>Uso</h3> <p>Inspeccionar un elemento usando <em>DevTools</em> y haciendo click sobre <strong>Templates</strong> en la barra de <em>DevTools</em>.</p> </div> <span><span>keopx</span></span> <span><time datetime="2017-07-03T15:02:10+02:00" title="Lunes, Julio 3, 2017 - 15:02">Lun, 03/07/2017 - 15:02</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/drupal-7x" hreflang="es">Drupal 7.x</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/drupal-7x" hreflang="es">Drupal 7.x</a></div> <div class="field__item"><a href="/tag/twig" hreflang="es">Twig</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=272&amp;2=field_comments&amp;3=comment" token="d96fs2f8NKd88q03-l2WzEa5JPGEsqEWuRLD9OvvCsM"></drupal-render-placeholder> </div> </div> </section> Mon, 03 Jul 2017 13:02:10 +0000 keopx 272 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 Coder Sniffer for Drupal Coding Standards https://keopx.net/blog/coder-sniffer-drupal-coding-standards <span>Coder Sniffer for Drupal Coding Standards</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Install Coder with composer:</p> <pre> <code class="language-bash">composer global require drupal/coder</code></pre><p><strong>Custom setup using for Drupal Coding Standards.</strong></p> <p>Add symbolic path to support <em>Drupal</em> and <em>DrupalPractice</em> Standard:</p> <pre> <code class="language-bash">$ ln -s ~/.composer/vendor/drupal/coder/coder_sniffer/Drupal ~/.composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards/Drupal $ ln -s ~/.composer/vendor/drupal/coder/coder_sniffer/DrupalPractice ~/.composer/vendor/squizlabs/php_codesniffer/CodeSniffer/Standards/DrupalPractice</code></pre><p>If you're using <em>bash</em>, edit <em>$HOME/.bashrc</em> (or <em>$HOME/.bash_profile</em>).</p> <pre> <code class="language-bash">alias drupalcs="~/.composer/vendor/bin/phpcs --colors --standard=~/.composer/vendor/drupal/coder/coder_sniffer/Drupal --extensions=php,module,inc,install,test,profile,theme,js,css,info,txt,md"</code></pre><p>Or if you added symbolic links:</p> <pre> <code class="language-bash">alias drupalcs="~/.composer/vendor/bin/phpcs --colors --standard=Drupal --extensions=php,module,inc,install,test,profile,theme,js,css,info,txt,md"</code></pre><pre> <code class="language-bash">source .bashrc</code></pre><p>Execution example:</p> <pre> <code class="language-bash">$ drupalcs modules/custom/custom_crm FILE: ...ww/docroot/modules/custom/custom_crm/src/CrmConfigUri.php ---------------------------------------------------------------------- FOUND 3 ERRORS AFFECTING 3 LINES ---------------------------------------------------------------------- 3 | ERROR | [x] There must be one blank line after the namespace | | declaration 6 | ERROR | [x] Missing class doc comment 28 | ERROR | [x] Expected 1 newline at end of file; 0 found ---------------------------------------------------------------------- PHPCBF CAN FIX THE 3 MARKED SNIFF VIOLATIONS AUTOMATICALLY ---------------------------------------------------------------------- Time: 157ms; Memory: 7.75Mb </code></pre><p>References:</p> <ul><li><a href="https://www.drupal.org/project/coder">Coder</a></li> <li><a href="https://www.drupal.org/node/1419988">Installing Coder Sniffer</a></li> <li><a href="https://www.drupal.org/node/1587138">Command Line Usage</a></li> </ul></div> <span><span>keopx</span></span> <span><time datetime="2016-07-16T11:38:42+02:00" title="Sábado, Julio 16, 2016 - 11:38">Sáb, 16/07/2016 - 11:38</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/drupal-7x" hreflang="es">Drupal 7.x</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-7x" hreflang="es">Drupal 7.x</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/quality" hreflang="es">Quality</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=266&amp;2=field_comments&amp;3=comment" token="gqLjaRVS46gQeekKVb4H5xj9BaiDawhrBhoEKGIhT7s"></drupal-render-placeholder> </div> </div> </section> Sat, 16 Jul 2016 09:38:42 +0000 keopx 266 at https://keopx.net DrupalDay Bilbao 2014: Publica tu proyecto en drupal.org https://keopx.net/talk/drupalday-bilbao-2014-publica-tu-proyecto-en-drupalorg <span>DrupalDay Bilbao 2014: Publica tu proyecto en drupal.org</span> <span><span>keopx</span></span> <span><time datetime="2014-11-08T19:46:12+01:00" title="Sábado, Noviembre 8, 2014 - 19:46">Sáb, 08/11/2014 - 19:46</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Sesión de contribución a <a href="https://www.drupal.org">drupal.org</a> con nuevos módulos en el <a href="https://2014.drupalday.es/">DrupalDay Bilbao 2014</a>.</p> <p>Esta sesión la realice junto a <a href="https://www.drupal.org/u/alvar0hurtad0">Alvaro Hurtado</a> en la que compartimos la experiencia que tuve cuando le <em>mentorice</em> para la publicación de su primer modulo.</p> <ul><li>Esto tiene que existir ! Módulos relacionados! Issues abandonadas! Un módulo para drupal5 que se parece pero no es! …</li> <li>¿Alguien sabe cómo…? no me suenaNOOOOOO! !!!!!!!</li> <li>Debería existir y estar contribuido BUSCA A ALGUIEN QUE TE LO PUBLIQUE PASA EL PROCESO DE REVISIÓN.</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/BWVDuqAkJjdGsO" 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/drupalday-bilbao-2014-publica-tu-proyecto-en-drupalorg" target="_blank" title="DrupalDay Bilbao 2014: Publica tu proyecto en drupal.org">DrupalDay Bilbao 2014: Publica tu proyecto en drupal.org</a> </strong> de <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <div> </div> <div>Sesión: <a href="https://2014.drupalday.es/sesion/publica-tu-proyecto-en-drupalorg.html">https://2014.drupalday.es/sesion/publica-tu-proyecto-en-drupalorg.html</a></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-7x" hreflang="es">Drupal 7.x</a></div> <div class="field__item"><a href="/categoria/drupal-8x" hreflang="es">Drupal 8.x</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-7x" hreflang="es">Drupal 7.x</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/drupaday" hreflang="es">DrupaDay</a></div> </div> </div> Sat, 08 Nov 2014 18:46:12 +0000 keopx 290 at https://keopx.net e-Ghost: Introducción al desarrollo de módulos en Drupal 7 https://keopx.net/talk/e-ghost-introduccion-al-desarrollo-de-modulos-en-drupal-7 <span>e-Ghost: Introducción al desarrollo de módulos en Drupal 7</span> <span><span>keopx</span></span> <span><time datetime="2014-07-07T18:47:03+02:00" title="Lunes, Julio 7, 2014 - 18:47">Lun, 07/07/2014 - 18:47</time> </span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Presentación del taller para la introducción al desarrollo de módulos en <a href="https://www.drupal.org">Drupal </a>7. </p> <p>Taller realizado en los <a href="https://sites.google.com/a/deusto.es/e-ghost-2014/">cursillos de verano de e-Ghost 2014</a>.</p> <p>Material para poder realizar las practicas: <a href="http://eghost2014.keopx.net/">http://eghost2014.keopx.net/</a></p> <p>Hablaremos de:</p> <ul><li>Estándares.</li> <li>Herramientas.</li> <li>Organización de módulos.</li> <li>Organización de código.</li> <li>Código.</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/knQa0DaU2nWk0P" 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/eghost-2014-introduccin-al-desarrollo-de-mdulos-en-drupal-7" target="_blank" title="e-Ghost 2014: introducción al desarrollo de módulos en drupal 7">e-Ghost 2014: introducción al desarrollo de módulos en drupal 7</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-7x" hreflang="es">Drupal 7.x</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/curso" hreflang="es">Curso</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</a></div> <div class="field__item"><a href="/tag/drupal-7x" hreflang="es">Drupal 7.x</a></div> </div> </div> Mon, 07 Jul 2014 16:47:03 +0000 keopx 286 at https://keopx.net Taller en Bilbao: Introducción al desarrollo de módulos en Drupal 7 https://keopx.net/blog/taller-en-bilbao-introduccion-al-desarrollo-de-modulos-en-drupal-7 <span>Taller en Bilbao: Introducción al desarrollo de módulos en Drupal 7</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Poco más que contar, repetimos la formación de la DrupalCamp 2014, pero esta vez en Bilbao y 4 horas de taller donde tendremos algo más de tiempo para profundizar en los temas. No me voy a extender mucho, pues la información podéis encontrarla en: <a href="https://sites.google.com/a/deusto.es/e-ghost-2014/cursos/introduccion-al-desarrollo-de-modulos-en-drupal-7">https://sites.google.com/a/deusto.es/e-ghost-2014/cursos/introduccion-al-desarrollo-de-modulos-en-drupal-7</a></p> </div> <span><span>keopx</span></span> <span><time datetime="2014-06-23T19:54:32+02:00" title="Lunes, Junio 23, 2014 - 19:54">Lun, 23/06/2014 - 19:54</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-7x" hreflang="es">Drupal 7.x</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/formacion" hreflang="es">Formación</a></div> <div class="field__item"><a href="/tag/drupal" hreflang="es">Drupal</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/modules" hreflang="es">Modules</a></div> <div class="field__item"><a href="/tag/desarrollo" hreflang="es">Desarrollo</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=254&amp;2=field_comments&amp;3=comment" token="wWfJ9TtiuIyHrYg0tejTztMXpPqemkq10hwX4y6Baos"></drupal-render-placeholder> </div> </div> </section> Mon, 23 Jun 2014 17:54:32 +0000 keopx 254 at https://keopx.net DrupalCamp Spain 2014: Introducción al desarrollo de módulos en Drupal 7 https://keopx.net/talk/drupalcamp-spain-2014-introduccion-al-desarrollo-de-modulos-en-drupal-7 <span>DrupalCamp Spain 2014: Introducción al desarrollo de módulos en Drupal 7</span> <span><span>keopx</span></span> <span><time datetime="2014-05-17T18:52:34+02:00" title="Sábado, Mayo 17, 2014 - 18:52">Sáb, 17/05/2014 - 18:52</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://2014.drupalcamp.es/node/210.html">DrupalCamp Spain de 2014</a> centrado en el desarrollo para <a href="https://www.drupal.org">Drupal</a> 7. 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/1CRHEpx18oDz5Hs6CQdTXJjgWuAD-suQWDWGX19O54FY/viewform"> https://docs.google.com/forms/d/1CRHEpx18oDz5Hs6CQdTXJjgWuAD-suQWDWGX19O54FY/viewform</a></li> </ul><p>Sera necesario tener instalado el entorno de desarrollo, un entorno con Drupal en LAMP, MAMP, WAMP o similar para poder trabajar.</p> <p><strong>Recomendación</strong>:</p> <ul><li>Drupal 7</li> <li>IDE de desarrollo.</li> </ul><p>Algunos módulos que veremos, por ello es aconsejable instalarlos.</p> <ul><li>Modulo Devel</li> <li>Modulo Coder</li> </ul><p>Están disponibles maquinas virtuales o instaladores para facilitar:</p> <p>Maquina Virtual</p> <ul><li><a href="http://drupalcamp2014.keopx.net/">http://drupalcamp2014.keopx.net/</a> (recomendado)</li> <li><a href="https://bitnami.com/stack/drupal/installer">https://bitnami.com/stack/drupal/installer</a></li> <li><a href="https://bitnami.com/stack/drupal/virtual-machine">https://bitnami.com/stack/drupal/virtual-machine</a></li> </ul><p>Presentación</p> <ul><li><a href="http://drupalcamp2014.keopx.net/">http://drupalcamp2014.keopx.net/</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/KOdLfu4RHnznGu" 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-campspain-2014-introduccin-al-desarrollo-de-mdulos-en-drupal-7" target="_blank" title="DrupalCamp Spain 2014: Introducción al desarrollo de módulos en Drupal 7">DrupalCamp Spain 2014: Introducción al desarrollo de módulos en Drupal 7</a> </strong> de <strong><a href="https://www.slideshare.net/keopx" target="_blank">Keopx </a></strong></div> <div class="text-align-center" style="margin-bottom:5px"> </div> <p>PD: Hablaremos de manera superficial de D6, pues es muy similar a D7.</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-7x" hreflang="es">Drupal 7.x</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/drupal-7x" hreflang="es">Drupal 7.x</a></div> <div class="field__item"><a href="/tag/desarrollo" hreflang="es">Desarrollo</a></div> <div class="field__item"><a href="/tag/modules" hreflang="es">Modules</a></div> </div> </div> Sat, 17 May 2014 16:52:34 +0000 keopx 287 at https://keopx.net Drush: listar modulos activados https://keopx.net/blog/drush-listar-modulos-activados <span>Drush: listar modulos activados</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><p>Mediante drush podemos ver la lista de módulos activados.</p> <p>Esto nos viene bien para poder listar los módulos de forma rápida, puesto que normalmente solemos tener múltiples módulos que cuesta visualizarlos.</p> <p><code>drush pm-list --type=Module --status=enabled</code></p> </div> <span><span>keopx</span></span> <span><time datetime="2014-02-12T19:40:46+01:00" title="Miércoles, Febrero 12, 2014 - 19:40">Mié, 12/02/2014 - 19:40</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-7x" hreflang="es">Drupal 7.x</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/drush" hreflang="es">Drush</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/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=251&amp;2=field_comments&amp;3=comment" token="f9gfzalt5nvW-Xs8iN__pEQKIcKsf4WFm8LXOt5ZcZI"></drupal-render-placeholder> </div> </div> </section> Wed, 12 Feb 2014 18:40:46 +0000 keopx 251 at https://keopx.net Instalación del modulo de Drupal Apachesolr https://keopx.net/blog/instalacion-del-modulo-de-drupal-apachesolr <span>Instalación del modulo de Drupal Apachesolr</span> <div class="text-content clearfix field field--name-body field--type-text-with-summary field--label-hidden field__item"><h1>Instalación del modulo de Drupal Apachesolr</h1> <h2>Modulo apachesolr</h2> <p>Descargar y comprimir el modulo de apachesolr: <a href="http://drupal.org/project/apachesolr">http://drupal.org/project/apachesolr</a></p> <h2>Instalar JSON</h2> <pre> <code class="language-bash">$ sudo aptitude install php5-json</code></pre><p>En caso de no disponer en los repositorios, en necesario el instalarlo a mano.</p> <pre> <code class="language-bash">$ sudo pecl install json sudo nano /etc/php5/conf.d/json.ini</code></pre><p>Añadir el contenido "extension=json.so" (sin las comillas).</p> <h2>Librería solr-php-client</h2> <p>Obtener del siguiente proyecto la librería necesaria: <a href="http://code.google.com/p/solr-php-client/">http://code.google.com/p/solr-php-client/</a> Ir al directorio del modulo apachesolr y ejecutar el siguiente comando:</p> <pre> <code class="language-bash">$ svn checkout -r22 http://solr-php-client.googlecode.com/svn/trunk/ SolrPhpClient</code></pre><h2>Instalar Apache Solr</h2> <p>Se puede realizar la instalación de dos formas diferentes.</p> <p>Una opción puede ser el usar la aplicación del ejemplo con la configuración de Drupal y la otra basada en tomcat.</p> <p>Descargar Solr 1.4 de:</p> <p><a href="http://www.apache.org/dyn/closer.cgi/lucene/solr/">http://www.apache.org/dyn/closer.cgi/lucene/solr/</a></p> <p>Descomprimir el fichero en una ruta que no este visible y que tampoco sea la de Drupal.</p> <h2>Configuración de Solr basada en Example de Jetty</h2> <p>Vamos a la siguiente carpeta<strong> apache-solr-1.4.0/example</strong> donde esta un ejemplo del servidor que sirve como ejemplo, test, desarrollo y para pequeños sitios en producción.</p> <p>Entramos en la carpeta <strong>apache-solr-1.4.0/example/solr/conf/</strong> y renombramos los siguientes ficheros <strong>schema.xml</strong> y <strong>solrconfig.xml</strong> a <strong>schema.back</strong> y <strong>solrconfig.back</strong>.</p> <p>Ahora copiamos los ficheros <strong>schema.xml</strong> y <strong>solrconfig.xml</strong> del modulo <strong>apachesolr</strong> a la carpeta <strong>apache-solr-1.4.0/example/solr/conf/</strong>.</p> <p>Subimos un nivel en la carpeta a la ruta <strong>apache-solr-1.4.0/example</strong> y ejecutamos el siguiente comando:</p> <pre> <code class="language-bash">$ java -jar start.jar</code></pre><p>Accedemos a la siguiente ruta para comprobar que esta en marcha:</p> <p><a href="http://localhost:8983/solr/admin/">http://localhost:8983/solr/admin/</a></p> <h1>Configuración de Solr basada en Tomcat 6.0</h1> <p>Se puede instalar Tomcat de los repositorios o descargarlo de la web.</p> <pre> <code class="language-bash">$ sudo aptitude install tomcat6 tomcat6-admin</code></pre><p>O descargarlo de:</p> <p><a href="http://tomcat.apache.org/download-60.cgi#6.0.26">http://tomcat.apache.org/download-60.cgi#6.0.26</a></p> <p>Una vez realizado configuramos apachesolr:</p> <p>Vamos a la siguiente carpeta <strong>apache-solr-1.4.0/example</strong> donde esta un ejemplo del servidor que sirve como ejemplo, test, desarrollo y para pequeños sitios en producción.</p> <p>Entramos en la carpeta <strong>apache-solr-1.4.0/example/solr/conf/</strong> y renombramos los siguientes ficheros <strong>schema.xml</strong> y <strong>solrconfig.xml</strong> a <strong>schema.back</strong> y <strong>solrconfig.back</strong>.</p> <p>Ahora copiamos los ficheros <strong>schema.xml</strong> y <strong>solrconfig.xml</strong> del modulo <strong>apachesolr</strong> a la carpeta <strong>apache-solr-1.4.0/example/solr/conf/</strong>.<br /> Copiamos el war de la aplicación:</p> <pre> <code class="language-bash">$ sudo cp apache-solr-1.4.0/example/solr/ /nuestra_ruta/tomcat6/solr</code></pre><p>Ahora copiamos la carpeta <strong>solr</strong> de <strong>apache-solr-1.4.0/example/</strong> a nuestra carpeta tomcat6:</p> <pre> <code class="language-bash">$ sudo cp apache-solr-1.4.0/dist/apache-solr-1.4.0.war /nuestra_ruta/tomcat6/webapps/solr.war</code></pre><p>Creamos el fichero <strong>sorl.xml</strong> en la ruta <strong>/nuestra_ruta/tomcat6/conf/Catalina/localhost/solr.xml</strong>.</p> <pre> <code class="language-bash">$ sudo nano /nuestra_ruta/tomcat6/conf/Catalina/localhost/solr.xml</code></pre><p>Y añadimos lo siguiente:<context crosscontext="true" debug="0" docbase="/solr.war"></context></p> <p>Ahora accedemos a la ruta:</p> <p><a href="http://localhost:8080/solr/admin/">http://localhost:8080/solr/admin/</a></p> <h1>Poner en marcha el modulo apachesolr</h1> <p>Ahora tenemos que activar los siguiente módulos "Apache Solr framework" y "Apache Solr search". Ahora comprobamos que el nos podemos conectar en ?q=admin/setting/apachesolr a Solr. Para que indexe es necesario ejecutar cron. Se puede controlar el monitor de indexación en ?q=admin/settings/apachesolr/index</p> <p>Según el servidor que configuremos sera necesario el puerto <strong>8983</strong> o <strong>8080</strong>.</p> <h1>Referencias</h1> <ul><li><a href="http://drupal.org/project/apachesolr">http://drupal.org/project/apachesolr</a></li> <li><a href="http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/apachesolr/README.txt?view=markup&amp;pathrev=DRUPAL-6--1">http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/apachesolr/README.txt?view=markup&amp;pathrev=DRUPAL-6--1</a></li> <li><a href="http://19thstreetdesign.com/blog/2009.02.04/installing-apache-solr-drupal-6">http://19thstreetdesign.com/blog/2009.02.04/installing-apache-solr-drupal-6</a></li> <li><a href="http://xdeb.org/node/1213">http://xdeb.org/node/1213</a></li> </ul></div> <span><span>keopx</span></span> <span><time datetime="2010-04-28T12:07:33+02:00" title="Miércoles, Abril 28, 2010 - 12:07">Mié, 28/04/2010 - 12:07</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/sorl" hreflang="es">Sorl</a></div> <div class="field__item"><a href="/categoria/drupal-7x" hreflang="es">Drupal 7.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/solr" hreflang="es">Solr</a></div> <div class="field__item"><a href="/tag/java" hreflang="es">Java</a></div> <div class="field__item"><a href="/tag/php" hreflang="es">php</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/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=180&amp;2=field_comments&amp;3=comment" token="AvesC6SMHC6sHNY1LaASNxmRuazOB7dhadZro2kazsg"></drupal-render-placeholder> </div> </div> </section> Wed, 28 Apr 2010 10:07:33 +0000 keopx 180 at https://keopx.net