Pasar al contenido principal

drupal 8

Instalar Drupal 9 en Ubuntu 20.04 con Lando y WSL2 en Windows 11

  • URL de Video remoto
Aprende a configurar e instalar fácilmente Drupal 9, utilizando Lando en tu entorno local.

Si no ves el video, puedes refrescar el navegador, presionando (Ctrl+Shift+R | Ctrl+F5 o Shift+F5), o abrirlo directamente desde el Canal de Youtube... HAZ CLIC AQUI

     Con la llegada de Docker, se cambió por completo la forma en que podíamos configurar entornos de desarrollo para nuestros proyectos web; ya que el uso de contenedores, permite crear entornos a medida, que podremos compartir entre los miembros de cualquier equipo, asegurándonos de evitar errores de compatibilidad entre los sistemas operativos de cada uno o el típico cambio de version en los diferentes lenguajes.

     Qué es Lando

         Aunque el concepto de "Dockerizar" nuestros entornos vino para facilitarnos la vida a los desarrolladores, la verdad es que entender su configuración y aplicación, puede llegar a ser un poco más complicada de lo que parece, sobretodo para los que venimos de trabajar con soluciones "todo en uno" del tipo Xampp, Wamp o Mamp. 

        Es por esta razón que poco a poco han ido surgiendo plataformas, como Lando, basadas en el uso de Docker y sus contenedores, que nos permitirá una instalación sencilla, para que podamos poner en marcha nuestros proyectos rápidamente y sin complicaciones.

     Prerrequisitos para instalar Lando con WSL2

        - Tener instalado y configurado el WSL2 ( Aprende cómo hacerlo aquí )

        - Tener instalado y configurado el Docker Desktop for Windows ( NO INSTALAR DOCKER DENTRO DEL WSL2 ) - Página Oficial de Docker

     Cómo instalar Lando en Ubuntu 20.04 utilizando WSL2 en Windows 11

          Como ya es costumbre, hemos creado un usuario "NOROOT", para ejecutar nuestros comandos SUDO, sin riesgos de cargarnos nada por error dentro de nuestra distribución de Ubuntu 20.04. Si todavía no sabes cómo Haz Clic aqui. Una vez iniciada la sesión con nuestro usuario ejecutaremos los siguientes comandos para realizar la instalación de Lando.

sudo wget https://files.lando.dev/installer/lando-x64-stable.deb
sudo dpkg -i lando-x64-stable.deb

     Corrección de errores durante la instalación:

lando | www.drupaladicto.com - Consultor especializado en drupal y symfony

   Instalar Docker-CE es uno de los requisitos para que Lando funcione correctamente, para saber cómo descargarlo e instalarlo en WSL2 Haz clic aquí  


   Es posible que tengas algún error durante el proceso de instalación relacionado con los permisos de instalación, para solucionarlo Haz clic aquí

 

     Cómo instalar Drupal 9 utilizando Lando en Ubuntu con WSL2 y Windows 11

           Una vez hemos descargados y configurados los prerrequisitos, para continuar con nuestra instalación de Drupal, tenemos que aclarar un para de puntos, para que entendamos el porqué procederemos de esta manera.

          Si hacemos una búsqueda rápida de Cómo instalar Drupal 9 usando Composer, encontraremos un enlace a al Página Oficial de Drupal, donde nos recomienda que para hacerlo tendremos que emplear el gestor de paquetes Composer, para facilitar la descarga de todas las dependencias, así como para facilitar las actualziaciones tanto de Núcleo de Drupal, como de sus respectivos módulos.

composer - www.drupaladicto.org Formacion especializada en drupal y symfony

          El problema radica en que Composer tiene como dependencia el uso de PHP, y el propósito de utilizar Docker, es para que no tengamos la necesidad de instalar nada directamente en nuestros ordenadores. En nuestra distribución de Ubuntu 20.04 que hemos configurado con WSL2 no queremos instalar nada más que lo necesario.

         Si vamos a la Página Oficial de Lando, donde nos explica los pasos para realizar una instalación de Drupal 9, veremos que en su propuesta nos habla de ejecutar varios comandos, entre los que destaca la descarga de un archivo comprimido de Drupal 9, pero esto entra en conflicto con la recomendación que vimos anteriorente de utilizar Composer como parte del proceso de instalación para Drupal.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

          Por suerte, dentro de los comandos disponibles en Lando está los que utilizan Composer, así que existe una forma de combinar ambas maneras y solucionar el conflicto.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Solución

        Para poder realizar una instalación de nuestro proyecto Drupal 9, siguiendo las recomendaciones desde su página oficial y a la vez, beneficiarnos del uso correcto de Lando, sin tener que instalar nada fuera de los contenedores, tendremos que seguir los siguientes pasos:

     Paso 1 - Descargar una distribución de Drupal con todo lo necesario

          Vamos a descargar una instalación de Drupal 9, que cumpla con la estructura necesaria para que podamos realizar su instalación, ejecutando, una vez descargados los archivos, los comandos de Composer, desde dentro de los contenedores de Lando. Haz clic aquí para descargar el Drupal 9

          O si lo prefieres, puedes clonar el repositorio directamente con este comando y además descargará todos los archivos dentro de la carpeta con el nombre drupal-gatsby:

git clone https://github.com/drupal-composer/drupal-project.git/ drupal-gatsby

docker - www.drupaladicto.org Formacion especializada en drupal y symfony - roles permisos y usuarios

      Paso 2 - Descomprimir los archivos e iniciar el Lando

            Una vez iniciemos sesión con nuestro usuario "NOROOT", colocaremos los archivos descargados y descomprimidos en esta ruta

/home/username/projects/yourproject

         A continuación nos moveremos dentro de la carpeta y luego ejecutaremos el comando de inicia Lando

lando init

        Esto creará el archivo de configuración de Lando llamado " .lando.yml ", que es donde podremos realizar cualquier cambio relacionado con la versión de PHP, servidores NGINX o Apache, Proxy, entre otras opciones.

        Una vez ejecutado el comando, se nos irán presenando varias preguntas para realizar las respectivas modificaciones antes de arrancar Lando, en la primera de ella tendremos que especificar el lugar donde tenemos alojado nuestro codigo, ya que estamos dentro de la carpeta con nuestro Drupal 9, seleccionaremos la primera opción.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

        La siguiente pregunta está relacionada directamente con la versión del proyecto, en este caso, como queremos arrancar un Drupal 9, moveremos las flechas del teclado hasta encontrarla y luego haremos clic en ENTER.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     En la siguiente pregunta tendremos que especificar la ubicación de nuestro archivo "webroot" o principal de Drupal; aunque todavía no existe, ya sabemos que al realizar una instalación de Drupal con Composer, estos archivos se colocarán dentro de la carpeta "web", así que especificaremos este nombre.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     A continuación tendremos que especificar el nombre para nuestra Aplicación, de esta forma, Lando podrá generar el identificador específico. Podremos poner el mismo que en nuestra carpeta o cualquier otro.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     ERROR DE PERMISOS

     Con el anterior comando, en nuestro caso, necesitaremos otorgarle permisos de escritura a la carpeta, para poder crear la configuración necesaria o de lo contrario nos devolverá el siguiente errror.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Si estás utilizando el usuario NOROOT, tendrás que darle permisos a Docker desde tu usuario ROOT, Haz clic aqui para saber cómo

     Una vez hayamos modificado los permisos de la carpeta, podremos ejecutar nuevamente el comando Lando init y completar el proceso de configuración para nuestro proyecto.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Cómo arrancar nuestro proyecto con Lando

        Llegados a este punto, ya nos falta muy poco para poder comenzar a trabajar con nuestro Drupal, RECORDEMOS QUE NOS FALTAN ARCHIVOS POR GENERAR, pero antes de esto, vamos a ejecutar el siguiente comando para arrancar Lando.

lando start

        Con esta acción, Lando comenzará el proceso de creació y configuración de los contenedores para nuestro proyecto, tomando los datos que definimos en los pasos anteriores. Además ya tendremos la posibilidad de comenzar a ejecutar los comandos de Lando disponibles, para completar las tareas que nos falten, como la de generar los archivos de Drupal 9 por medio de Composer.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Una vez ejecutado el comando anterior, veremos que se han generados varios contenenedores, además de algunos datos relacionados con nuestro proyecto, coo por ejemplo los enlaces para acceder a nuestro dominio.

     El problema en este momento, es que si intentáramos acceder a cualquiera de estas urls, el resultado será Página No Encontrada, ya que todavía tendremos que completar los archivos de Drupal necesarios para que este funcione.

     Como vimos al principio del artículo, podremos ejecutar el siguiente comando disponible en lando, para que se descarguen todos los archivos que nos hacen falta.

lando composer install

     Y de inmediato comenzarán a descargarse todos los archivos definidos en el composer.json, dentro del Drupal.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Si ahora ejecutamos nuevamente el comando " lando start " podremos comprobar que accederemos a nuestro drupal sin ningún error. 

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Cómo puedo saber los datos de mis servidores (Base de datos, versión de Nginx, etc)

           Si has llegado a este paso sin complicaciones, lo siguiente que necesitarás serán los datos de acceso para decirle a Drupal el nombre de la base de datos, usuario, etc. esto podrás optenerlo con el comando siguiente

lando info

        Con esto podrás comprobar todas las informaciones relacionadas que necesitarás para continuar con tu instalación de Drupal 9. Como la versión de PHP, los nombre de los Host (Atención al host database para tu instalación en lugar de localhost)

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Al instalar Drupal, por defecto nos coloca "localhost", como nombre del servidor, en este caso, tendremos que modificarlo por el nombre generado por Lando para que podamos continuar con dicha instalación.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Cómo modificar la configuración por defecto de Lando

        Si estamos trabajando con un proyecto Drupal 9 desde cero, todo lo anterior nos viene de maravilla, ya que por defecto contamos con lo necesario para configurar, arrancar o incluso ampliar nuestro Drupal 9 descargando y activando nuevo módulos. Pero ¿qué pasa si en lugar de un proyecto nuevo, es un proyecto que ya existe y que nos acaban de adjudicar?, ¿podremos modificar la configuración por defecto, para adaptar la versión de PHP, o activar xdebug?

     Es posible modificar cualquier configuración por defecto de Lando, gracias al archivo " .lando.yml ", que se genera al ejecutar el comando de inicialización lando init. 

     Sólo tendremos que abrir nuestro proyecto con el IDE que prefieras y buscarlo, para editarlo. Sólo ten en cuenta, que al tratarse de un archivo con la extensión ".yml", es muy importante guardar los espacios adecuados para que todo funcione de manera correcta. 

     En la siguiente imagen, he modificado la versión del PHP a "5.6" en lugar de "7.4" que se descargó por defecto.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Para que los cambios se realicen, será necesario detener y volver a arrancar lando con los comandos 

lando stop

lando start

     Una vez arrancado lando nuevamente, si ejecutamos el comando lando info, podremos comprobar que, efectivamente, se ha realizado la modificacion en la versión de PHP que venía por defecto.

lando - www.drupaladicto.org Formacion especializada en drupal y symfony

     Si quieres saber otro comando que ofrece Lando, por ejemplo, para acceder a tus bases de datos, puedes ejecutar el siguiente comando

lando
Commandos:
  lando composer          Ejecuta comando de composer
  lando config            Muestra la configuración de lando
  lando db-export [file]  Exporta base de datos hacia un archivo
  lando db-import <file>  Importa un archivo dump dentro de un servicio de base de datos
  lando destroy           Destruye tu aplicación
  lando drush             Ejecuta comandos de drush
  lando info              Imprime en pantalla información de tu aplicación
  lando init              Inicializa el código con lando
  lando list              Muestra el listado de contenedores ejecutándose
  lando logs              Despliega logs para tu aplicación
  lando mysql             Drops into a MySQL shell on a database service
  lando php               Ejecuta comandos PHP
  lando poweroff          Spins down all lando related containers
  lando rebuild           Reconstruye tu aplicación desde el principio, manteniendo los datos
  lando restart           Restaura tu aplicación
  lando share             Comparte tu entorno local
  lando ssh               Drops into a shell on a service, runs commands
  lando start             Arranca tu aplicación
  lando stop              Detiene tu aplicación
  lando version           Muestra la versión de lando

Admin Toolbar

  • URL de Video remoto
Llega más fácilmente a cualquier lugar de tu proyecto Drupal y ahorra tiempo.

Es muy importante, que al momento de comenzar un proyecto con Drupal, contemos con los módulos que nos facilitarán las tareas de desarrollo, agilizando el proceso de creación, configuración y ejecución de cambios.

Uno de estos módulos es Admin Toolbar, que nos aportará, entre otras cosas, la posibilidad de acceder más rápidamente a cualquiera de las opciones y páginas de nuestro proyecto, ya que amplía  notablemente la funcionalidad del menú administrador que trae Drupal por defecto. 

Admin Toolbar Module Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

     Aunque este módulo sustituye el menú administrador con el que nos viene toda instalación de Drupal, mantiene sus funcionalidades originales, como los enlaces directos, además de heredar la capacidad responsiva, lo que significa que podremos administrar nuestra web desde cualquier dispositivo móvil o Tablet con mayor facilidad que en versiones anteriores.

SUB-MÓDULOS DE ADMIN TOOLBAR

     Cuando descargues el módulo Admin Toolbar, te recomiendo activar todos sus sub-modulos, ya que al hacerlo tendrás otras opciones bastante interesantes.. 

Admin Toolbar Extra Tools
     
Con este sub-modulo se añaden enlaces directos a varias funcionalidades muy necesarias en nuestro desarrollo, como el borrado de caché, ejecución del cron de Drupal o las actualizaciones, así como todas las relacionadas con otro módulo muy recomendable durante cualquier desarrollo de Drupal, como es el  Módulo Devel.

Admin Toolbar Module Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

ADMIN TOOLBAR SEARCH

Este interesante sub-modulo activa un potente buscador, para encontrar las diferentes formas de acceder a cualquiera de los contenidos o módulos de tus proyectos, tienes esta funcionalidad en el Módulo Coffe

Admin Toolbar Module Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

ADMIN LINKS ACCESS FILTER

El módulo Admin links Access filter corrige la visualización de enlaces a los que el usuario no debería tener acceso (ver # 296693: Restringir el acceso a páginas de administración de nivel superior vacías) se incluyó como el submódulo de filtro de acceso a enlaces de la barra de herramientas de administrador.
A partir de 8.x-1.21, el módulo de la barra de herramientas de administración se ha vuelto compatible con la Sección 508 de la Ley de rehabilitación, sobre todo al hacer que el teclado del módulo sea accesible y compatible con los contrastes de color para el enfoque. Para obtener más información sobre esta visita

 

DESCARGA Y ACTIVACIÓN:

Para descargar y activar cualquier módulo de Drupal tienes varias opciones:

     Descarga:

          1.- La forma recomendada a partir de Drupal 8, es utilizando el gestor de paquetes Composer, ejecutando en tu consola el comando:

composer require drupal/admin_toolbar

          2.- Descargándolo manualmente el módulo desde la página oficial del Módulo Admin Toolbar y una vez descargado y colocado en carpeta "modules/contrib", si haz descargado todos tus módulos manualmente, deberías crear la carpeta "contrib", para que puedas diferenciar entre tus módulos personalizados y los que están disponibles directamente en la Página oficial de Drupal.
 

     Activación:

          1.- Utilizando la herramienta de consola Drush, la opción "-y" activará todos los sub-modulos automáticamente

drush en admin_toolbar -y

          2.- Desde la interfaz de usuario de Drupal, en la url "/admin/modules", y luego marcando el check junto al nombre de tu módulo y haciendo clic en el botón guardar que aparecer al final de la página.

Admin Toolbar Module Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Backup and Migrate

  • URL de Video remoto
Aprende a crear copias de seguridad para trabajar en tu entorno local.

  Imagina que estás trabajando en un nuevo proyecto con Drupal 8 o 9 en tu ordenador, estás modificando contenidos, estructuras, taxonomías y de pronto ocurre un error que te deja sin acceso a la última versión estable de tu proyecto.

Por esta razón es muy recomendable que el segundo módulo que instales en cualquier Drupal sea Backup and Migrate, por que podrás realizar copias de seguridad antes de instalar otros módulos o aplicar cambios importantes. Además tendrás la opción de descargar el archivo comprimido, si quieres hacer un traspaso de tu instalación hacia otro entorno para aplicar dichos cambios inmediatamente o podrás programarlas para que se hagan automáticamente en tu servidor de producción.

Cómo instalar y configurar el módulo:

Paso 1 Descargar el módulo:

     Lo primero que tendrás que hacer es descargarlo, para ello, a partir de Drupal 8 se recomienda que utilices el gestor de paquetes Composer, ya que te facilitará tanto la instalación como futuras actualizaciones del tus proyectos. No obstante también podrías descargarlo desde la Página oficial del módulo y una vez descargado, tendrás que colocarlo en la carpeta "modules" o "modules/contrib", dependiendo de tu instalación.

Paso 2 Configuración del settings:

     Configuración de los archivos privados dentro de "Settings.php", este paso es muy importante, porque el módulo Backup and Migrate utiliza por defecto, los archivos privados de Drupal, ya que las copias de seguridad no deberían estar disponibles para nadie más que los administradores del sitio. 

     Si abres tu archivo "settings.php" con tu editor de texto o IDE favorito y buscas la palabra "private", encontrarás varias líneas de código que te explican cómo funciona, además de la línea específica, que deberás descomentar, borrando la almohadilla "#" para luego añadir la ubicación que tendrá tu archivo private.

     Puedes utilizar por ejemplo: "$settings['file_private_path'] = '../private'; esto significa que tu carpeta "private" estará colocada a nivel de tu directorio Raiz y que dentro el módulo Backup and Migrate creará dentro su propia carpeta con los accesos y permisos requeridos para que funcione correctamente.

     

backup and migrate - www.drupaladicto.com - Formacion especializada en drupal y symfony

Paso 3 Activación del módulo :

     Para activar el módulo Backup and migrate, al igual que todos los demás módulos contribuidos de Drupal, tendrás la posibilidad de hacerlo, mediante el uso de la herramienta Drush, con el comando "drush en backup_migrate -y", que sirve para activar cualquier módulos y todas sus dependencias, o desde la interfaz de drupal.   

 

Paso 4 Comprobación:

     Ahora que ya tenemos activado el módulo y que hemos configurado correctamente el archivo "settings.php" y la carpeta para los archivos privados y las copias del módulo, nos toca asegurarnos de que todo funciona según el plan.

     Para ello puedes acceder a la pantalla de configuraciones del módulo, desde el menú superior y luego crear tu primera copia de seguridad, asegurándote de que la copia se guardará en los archivos privados y después haciendo clic en el botón de "hacer copia de seguridad ahora", una vez realizada la copia:

 https://miproyecto_drupal/admin/config/development/backup_migrate

 

backup and migrate - www.drupaladicto.com - Formacion especializada en drupal y symfony

 

     Si todo está correcto verás un mensaje de confirmación y luego podrás buscar la copia guardada, en la pestaña "copias de seguridad guardadas", o si lo prefieres, también podrás descargar el archivo comprimido, por si quieres trasladar tu proyecto a otro entorno.

 

backup and migrate - www.drupaladicto.com - Formacion especializada en drupal y symfony

Colorbox

  • URL de Video remoto
Muestra tus imágenes con más profesionalidad y atractivo.

  El módulo Colorbox nos ofrece la oportunidad de mostrar imágenes dentro de un Popup con navegador integrado en el caso de que tengamos varias imágenes asociadas al campo que lo utiliza.

Podremos utilizarlo en un campo tipo imagen de cualquier contenido o dentro de una vista.

CÓMO INSTALAR Y CONFIGURAR EL MÓDULO:

Paso 1 - Descargar el módulo:

     Lo primero que tendrás que hacer es descargarlo, para ello, a partir de Drupal 8 se recomienda que utilices el gestor de paquetes Composer, ya que te facilitará tanto la instalación como futuras actualizaciones del tus proyectos. No obstante también podrías descargarlo desde la Página oficial del módulo y una vez descargado, tendrás que colocarlo en la carpeta "modules" o "modules/contrib", dependiendo de tu instalación.

Además tendremos que descargar la librería The Colorbox plugin 1.x y colocarla en el directorio "libraries" dentro de nuestro proyecto.

Recuerda que si no tienes creada la carpeta "libraries", tendrás que crearla y colocarla el el directorio raíz si haz descargado Drupal directamente o dentro del directorio web, si haz utilizado Composer para descargar Drupal 9.

Paso 2 - Configuración del campo:

     Una vez que tienes descargado y activado el módulo Colorbox, ya sólo nos queda configurar el campo en el que presentaremos las imágenes, éste puede ser de uno o varios valores, o sea, que te permita cargar una o varias imágenes.

     Para configurar el modo de visualización de un campo en el que utilizarás Colorbox, deberás ir al menú "estructura/tipo de contenido/TU TIPO DE CONTENIDO" y luego seleccionar la pestaña "gestionar presentación" para poder elegir colorbox como opción.

Colorbox Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Paso 3 - Comprobación:

     Una vez configurado el modo de visualización de tu campo, al hacer clic sobre la imagen verás el nuevo aspecto que muestra, si el campo permite más de una imagen, automáticamente verás en la parte inferior izquierda, un navegador que te permitirá recorrer todas las imágenes.

Colorbox Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

DESCARGA Y ACTIVACIÓN:

Para descargar y activar cualquier módulo de Drupal tienes varias opciones:

     Descarga:

          1.- La forma recomendada a partir de Drupal 8, es utilizando el gestor de paquetes Composer, ejecutando en tu consola el comando:

composer require drupal/colorbox

          2.- Descargándolo manualmente el módulo desde la página oficial del Módulo Admin Toolbar y una vez descargado y colocado en carpeta "modules/contrib", si haz descargado todos tus módulos manualmente, deberías crear la carpeta "contrib", para que puedas diferenciar entre tus módulos personalizados y los que están disponibles directamente en la Página oficial de Drupal.
 

     Activación:

          1.- Utilizando la herramienta de consola Drush, la opción "-y" activará todos los sub-modulos automáticamente

drush en colorbox -y

          2.- Desde la interfaz de usuario de Drupal, en la url "/admin/modules", y luego marcando el check junto al nombre de tu módulo y haciendo clic en el botón guardar que aparecer al final de la página.

Colorbox Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

   Posibles fallos y solución:

     The DOMPurify library is not installed.

 

Field Group

  • URL de Video remoto
Convierte tus formularios y contenidos en estructuras más funcionales.

      En varias ocasiones, nos encontraremos, con la necesidad de añadir un aspecto más funcional y amigable, para nuestros formularios y/o contenidos; si por ejemplo, nuestro formulario de creación, de un contenido específico, cuenta con un gran número de campos u opciones para su configuración, poder incluirlas dentro de pestañas, acordiones o tabs, suele aportar un cambio crucial, en la mayoría de los casos.

     El módulo Fied Group, de Drupal, no permitirá realizar muy fácilmente, estos cambios, utilizando la interfaz de usuario, con un mínimo de esfuerzo para lograr el objetivo esperado.

 

fieldgroup - www.drupaladicto.com - formacion especializada en Drupal y Symfony

 

 Descarga y Activación:

Para descargar y activar cualquier módulo de Drupal tienes varias opciones:

     Descarga:

          1.- La forma recomendada a partir de Drupal 8, es utilizando el gestor de paquetes Composer, ejecutando en tu consola el comando:

composer require drupal/field_group

          2.- Descargándolo manualmente el módulo desde la página oficial del Módulo Field Group y una vez descargado y colocado en carpeta "modules/contrib", si haz descargado todos tus módulos manualmente, deberías crear la carpeta "contrib", para que puedas diferenciar entre tus módulos personalizados y los que están disponibles directamente en la Página oficial de Drupal.

     Activación:

          1.- Utilizando la herramienta de consola Drush, la opción "-y" activará todos los sub-modulos automáticamente

drush en field_group -y

          2.- Desde la interfaz de usuario de Drupal, en la url "/admin/modules", y luego marcando el check junto al nombre de tu módulo y haciendo clic en el botón guardar que aparecer al final de la página.

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

     Cómo agrupar elementos utilizando el módulo Field Group

          Es importante entender que este módulo, en realidad crea un "contenedor" o grupo, al que añade la etiqueta html correspondiente, por ejemplo Vertical Tabs o Pestañas verticales, y a continuación, si queremos dividir los elementos en varias pestañas, tendremos que añadir un segundo "contenedor", equivalente a la cantidad de pestañas que esperamos utilizar.

          Para poder comenzar a definir nuestras estructuras de campos, con este módulo, una vez lo hayamos instalado, nos iremos al menú estructura/tipo de contenido y nos cololaremos en la pestaña del contenido que vamos a modificar. Por ejemplo, si lo que queremos añadir son pestañas dentro del formulario de creación de un contenido, entonces, nos colocaremos dentro de la pestaña que permite modificar el formulario.

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

      Por el contrario, si queremos que los cambios se apliquen, al visualizar nuestro tipo de contenido, tendremos que colocarnos en la pestaña que permite modificar su presentación.

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

     Una vez tengamos claros los campos que esperamos agrupar, procedremos a elegir la opción que se adapte mejor a nuestras necesidades. En el siguiente ejercicio vamos a dividir en diferentes zonas el formulario de creación del tipo de contenido Artículo, que nos viene por defecto al instalar Drupal.

  • Paso 1 : Hacer clic en el botón Add Field Group, para que nos permita seleccionar la opción que vamos a utilizar en el Elemento Padre o Contenedor principal.
     
  • Paso 2 : Selecionamos el tipo de grupo que vamos a utilizar.
     
  • Paso 3 : Definimos el efecto de animación para cuando hagamos clic sobre el elemento, también podremos agregar un ID o clases para aplicar usando css.
     
  • Paso 4 : Hacer clic en el botón Crear grupo. 

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

     Por defecto, una vez creado el elemento con Field Group, aparecerá en la parte inferior, con los desactivados, para que podamos pasar al siguiente elemento o activarlo cuando estemos preparados.

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

     En el caso de la creación de los elementos "Hijos" del contenedor principal, el proceso es casi el mismo, con la diferencia de que seleccionaremos otro tipo de grupo, que puede variar según la opción elegida para el elemento padre. Por ejemplo, si el "Padre" es del tipo Accordion, los "hijos" deberán ser del tipo Accordion item

 

  • Paso 1 : Hacer clic en el botón Add Field Group, para que nos permita seleccionar la opción que vamos a utilizar en el Elemento Hijo o Contenedor secundario.
     
  • Paso 2 : Selecionamos el tipo de grupo que vamos a utilizar, dependerá del elemento que se haya seleccionado como padre.
     
  • Paso 3 : Definimos si el elemento aparecerá cerrado o abierto por defecto, también podremos agregar un ID o clases para aplicar usando css.
     
  • Paso 4 : Hacer clic en el botón Crear grupo. 

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

     Para finalizar, arrastraremos los elementos en la posición correspondiente, para que se muestre cada uno dentro del otro, si queremos varias pestañas dentro de un elemento padre, bastará con añadir tantos Items del tipo hijo, como pestañas necesarias.

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

     Si abrimos el formulario de creación del contenido, deberíamos ver algo parecido a la siguiente imagen.

 

field_group - www.drupaladicto.com - formacion especializada en drupal y symfony

Importar contenidos y usuarios desde CSV en Drupal 8/9

  • URL de Video remoto
Ahorra tiempo al traspasar contenidos entre tus webs importándolos en formato CSV.

     Muchas veces, al trabajar con proyectos web, nos encontrarmos con varias actividades relacionadas al traspaso de datos y/o migraciones, entre plataformas diferentes o versiones distintas de la misma. Según el caso, para realizar dicho procedimiento, contamos con varios métodos como el consumo de información a través de los servicios web o la importación desde archivos con diferentes formatos, que podrían ser xml, uml, json, csv, entre otros.

     Debido a que Drupal, al igual que otros CMS O gestores de contenido, utiliza bases de datos y tablas, como parte de su estructura, para guardar o gestionar todo aquello a lo que tenemos acceso, tanto si somos administradores, gestores o incluso usuarios finales, una vez instalado; es posible importar sus contenidos y usuarios desde un archivo en formato csv, ya que nos permitirá importar varias tablas y contenidos de una manera simple y visualmente gestionables, si nos apoyamos en programas para hojas de cálculo como Libre Office o Microsoft Excel.

 

 Descarga y Activación:

Para descargar y activar cualquier módulo de Drupal tienes varias opciones:

     Descarga:

          1.- La forma recomendada a partir de Drupal 8, es utilizando el gestor de paquetes Composer, ejecutando en tu consola el comando:

composer require drupal/csv_importer

          2.- Descargándolo manualmente el módulo desde la página oficial del Módulo CSV Importer y una vez descargado y colocado en carpeta "modules/contrib", si haz descargado todos tus módulos manualmente, deberías crear la carpeta "contrib", para que puedas diferenciar entre tus módulos personalizados y los que están disponibles directamente en la Página oficial de Drupal.

     Activación:

          1.- Utilizando la herramienta de consola Drush, la opción "-y" activará todos los sub-modulos automáticamente

drush en csv_importer -y

 

csv importer - www.drupaladicto.org Formacion especializada en drupal y symfony

          2.- Desde la interfaz de usuario de Drupal, en la url "/admin/modules", y luego marcando el check junto al nombre de tu módulo y haciendo clic en el botón guardar que aparecer al final de la página.

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

 

    Página de configuración de CSV Importer

        Una vez activado el módulo, podremos dirigirnos a su página de configuración, en la url "/admin/config/development/csv-importer", donde veremos un selector, que nos mostrará las diferentes opciones de importación y cambiará de acuerdo con lo que hayamos elegido. 

        

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

     Cómo importar contenidos con CSV Importer

          Para importar contenidos, tendremos que seleccionar la opción tipo de contenido y a continuación, veremos el listado de los tipos de contenidos que hayamos configurado en nuestro drupal.

          Select entity type: Permite seleccionar el tipo de entidad con el que vamos a trabajar en la importación. Por defecto, en una instalación nueva de Drupal, tendremos las siguientes entidades disponibles: Usustio, Enlace de menú personalizado, Contenido, Comentario y Término de taxonomía.

          Select entity bundle: Permite seleccionar el tipo de contenido que deseamos importar, dependiendo de los tipos que tengamos en el drupal instalados, este listado podría variar. Por defecto, en una instalación nueva de Drupal, tendremos Artículo y Página básica.

          ¿Qué es un Bundle?; según la página oficial de Drupal "En Drupal 8, los paquetes son un tipo de contenedor de información que contiene el campo o las definiciones de configuración. A veces se les llama "subtipos". Los paquetes son opcionales y en la jerarquía de tipos de contenedores de información se ajustan debajo de los tipos de entidad."

         Select delimiter: Permite seleccionar el separador que utilizaremos en el archivo de importación. Lo más frecuente es utilizar comas ( , ) o punto y como ( ; ), para separar los contendios dentro del archivo para importar.

         Select CSV file: Permite cargar el archivo con el que finalmente, importaremos los contenidos, usuarios, términos, etc.

     Cómo preparar el archivo de importación usando Open Office

          Ya mencioné al principio, que podremos crear archivos de importación en formato CSV utilizando programas gratuitos como Open Office o Microsoft Excel. El objetivo principal es que podamos controlar visualmente los contenidos que vayamos a utilizar, ya que el formato original del csv es un conjunto de datos y comas. Algo parecido al siguiente ejemplo:

title,body,body,body
CSV importer 1,body 1,body 2,body 3
CSV importer 2,body 4,body 5,body 6

     Para que podamos configurar un archivo de importación, lo importante es tener claro que la primera línea del archivo es la que define las cabeceras de las columnas y en las siguientes, los contenidos que se colocarán dentro de cada columna respectivamente. 

     Paso 1- Crear archivo 

        Abrir el programa Open Office y crear una hoja de cálculo nueva.

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

     Paso 2 - Eliminar hojas sobrantes antes de impotar

        Es muy importante que antes de comenzar a rellenar el archivo con nuestros datos, eleminemos las hojas adicionales que generan por defecto al crear una hoja de cálculo, o de lo contrario, no se realizará la importación.

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

     Paso 3 - Guardar el archivo en formato CSV

        Una vez hayamos rellenado el documento con todos los datos que vamos a importar, asegurándonos de que cada columna corresponda con el contenido o usuario esperado, procederemos a guardar nuestro archivo en el formato csv. 

       Para ello, iremos al menú Archivo/Guardar como

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

 

     A continuación, seleccionaremos el formato CSV y el programa nos preguntará, si deseamos mantener el mismo formato para continuar editando, seleccionaremos que sí, y de esta forma, aunque exportemos el archivo, también podremos realizar más cambios o correcciones usando el programa Open Office más adelante.

     Muy importante para los contenidos en español Formato Unicode UTF-8, en el caso de los contenidos en español, en la siguiente ventana que se abrirá deberíamos asegurarnos del formato correcto, para evitar errores con los signos de puntuación específicos de nuestro idioma como el uso de Ñ, acentos, etc.

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

     Paso 4 - Importando los contenidos desde el CSV creado

        Cuando hayamos terminado de configurar y guardar nuestro archivo csv, volveremos a la página de configuración del módulo CSV Importer, en la url "/admin/config/development/csv-importer" y procedermos a cargar nuestro archivo para comenzar con la importación.

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

     Problemas con la importación

          Es posible, que al hacer clic en el botón de importar, veas en la pantalla un error muy frecuente relacionado conel campo título, esto ocurre porque, si haz utilizado un programa de hojas de cáculo como Open Office o Microsoft Excel, al guardar el archivo, se ha añadido un espacio entre los campos título y el siguiente campo, que por defecto es el body. El campo título es el identificador por defecto en Drupal, por lo tanto, no debería existir ningún espacio relacionado con él.

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

     Para solucionarlo, abre el archivo csv utilizando el block de notas de windows o cualquier otro programa que te permita ver el contenido original, una vez abierto, borra el espacio que existe y una vez guardado el cambio, intenta realizar la importación nuevamente.

 

csv importer - www.drupaladicto.com - formacion especializada en drupal y symfony

     Ejemplos de importación con CSV Importer

          Si quieres conocer más sobre las estructuras de los archivos para importar, puedes visitar su Página de Ejemplos de Importación con CSV Importer