drupal 7

Migración Drupal 7 a 8, 9 o superiores

Video de Youtube
URL de Video remoto

     En este curso te ofrezco una guia, básica, pero que podrás aplicar para cualquiera de los proyectos que debas migrar desde Drupal 7 a versiones superiores.

   El contenido de este curso es el siguiente:

  • Configuración de los entornos, para instalar las dos versiones de Drupal con las que trabajaremos.
  • Instalación del proyecto Drupal 7 en local.
  • Instalación del proyecto Drupal 10 en local.
  • Cómo generar las copias de seguridad previas a la migración, en tu entorno local.
  • Indicaciones sobre los requermientos previos a la migración. (Traspaso entre ambas versiones, de archivos, módulos y themes)
  • Cómo ajustar el Drupal 7, para que sea compatible, con la migración.
  • Cómo ajustar, el Drupal destino, para que sea compatible con la migración.
  • Problemas y posibles soluciones durante el proceso de migración.
  • Consideraciones para el despliegue a producción.

   Requerimientos antes de comenzar

Drush , introducción y comandos más útiles

Video de Youtube
URL de Video remoto
Texto

     Para todos los que trabajamos, en el desarrollo de páginas web utilizando Drupal, es muy importante que nos mantengamos informados, sobre las últimas actualizaciones, tanto a nivel de las funcionalidades o parches de seguridad, del propio CMS, como de las herramientas relacionadas con éste, por ejemplo, el gestor de paquetes Composer, recomendado para todos los proyectos, a partir de Drupal 8 y que hace poco, lanzó una nueva versión ( Cómo instalar Composer 2 en Ubuntu 20.04 ) o superior o la consola Drush.

     Con el propósito de facilitar tus tareas de desarrollo, hoy quiero hablarte sobre, La interfaz de línea de comandos (en inglés, command-line interfaceCLI), que se utiliza en Drupal, conocida como Drush, para que puedas sacarle el mayor provecho posible y obtener mejores resultados.

   INSTALACIÓN DE DRUSH CON COMPOSER

        Hace varios años, se recomendaba que al trabajar con Drush y Drupal, realizáramos una instalación global, con la que pudiéramos efectuar toda clase de operaciones, sin importar la versión de nuestro proyecto; pero a partir de Drupal 8, se comenzó a proponer instalaciones individuales, para evitar errores producidos por incompatibilidades, ya fuera entre versiones de php, o del núcleo de Drupal.

        Actualmente, para instalar Drush en cualquier proyecto de Drupal 8 o superior, utilizaremos el gestor de paquetes Composer, y al igual que con otros módulos de Drupal, dejaremos en él la responsabilidad de descargar todos los archivos necesarios para su funcionamiento, para ello escribiremos desde la carpeta raíz de nuestra instlación, el siguiente comando:

composer require drush/drush

     De inmediato se iniciará el proceso de descarga de la versión más actual y estable, que esté disponible sobre esta herramienta de comandos, en el momento en que escribo este artículo, es la versión 10.5.0

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

     DRUSH LAUNCHER

         Con el Drush Launcher podrás ejecutar comandos de Drush en todos tus proyectos, sin la necesidad de escribir la ruta completa ej: "/vendor/bin/drush cr". Exiten varias formas para descargar e instalarlo, puedes revisar la documentación en Repositorio Drush Launcher

     5 COMANDOS DRUSH QUE DEBERÍAS CONOCER

     GENERAR UN MÓDULO

       Drush te genera automáticamente y de manera configurable, toda la estructura de archivos necesaria para crear un módulo. (Funcionalidad de la antigua Drupal Console)

drush generate module

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

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

     RECUPERAR ACCESO ADMIN

     En algunos casos, es posible que perdamos el acceso del usuario admin, al realizar algún traspaso de entornos o no haber guardado los datos de acceso en un lugar fácil de encontrar. Para estos casos, el siguiente comando te da la posiblidad de acceder como administrador para que puedas cambiar la clave de acceso por una nueva.

drush:uli 

     Forma de uso: Copia en el navegador el enlace generado, a partir de "/user" y pégalo en el navegador a continuación del dominio de tu página. Al presionar enter accederás directamente a la página de configuración del usuario administrador para que puedas cambiar la clave de acceso sin necesidad de acordarte de la anterior.

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

     VER LA TABLA DE ERRORES SIN ABRIR DRUPAL

     Como ya sabrás, Drupal ofrece la posibilidad de verificar, todos los errores que registra a nivel de base de datos, ya que los guarda en una tabla llamada Watchdog, con Drush podrás acceder a estos datos, sin la necesidad de entrar a la interfaz de usuario usando el siguiente comando:

drush wd-show

     Al ejecutarlo, verás inmediatamente en consola, todos los datos que haya guardado Drupal dentro de esta tabla, facilitándote el análisis de posibles errores más rápidamente.

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

     VER LOS MÓDULOS Y/O TEMAS ACTIVADOS

     En algunos proyectos, sobretodo cuando se trata de instalaciones muy grandes, necesitamos tener una idea rápida de los módulos o temas que se encuentran activados en un momento determinado. Este comando nos mostrará en pantalla, un listado completo de todos los módulos y temas, con la correspodiente información acerca su versión y de si están o no activados.

drush pml

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

     EXPORTAR BASE DE DATOS COMPLETA

     Cuando estamos haciendo el traspaso de entornos, es posible que necesitemos exportar toda la base de datos para dicho traspaso, con este comando, podremos generar rápidamente un backup que se guardará a la altura de nuestra carpeta raíz del proyecto:

drush sql:dump --result-file=../mi_backup.sql

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

     BORRAR BASE DE DATOS EXISTENTE:

drush sql-drop

     IMPORTAR UNA COPIA DE LA BASE DE DATOS:

drush sql-cli < ~/my-sql-dump-file-name.sql

Volcará la base de datos y la comprimirá, colocándola en el directorio predeterminado de drush bajo una marca de tiempo

drush sql-dump --gzip --result-file

Volcará la base de datos en el archivo especificado antes de comprimirlo con gzip

drush sql-dump --gzip --result-file=/path/to/file.sql

Fijar un tema por defecto para tu instalación de Drupal, ejemplo el theme Bartik

drush config-set system.theme default bartik

     Puedes aprende más sobre el uso y los comando de drush, visitando su drushcommands o www.drush.org/latest/

Cambiar el nombre del idioma en in language switcher (English > En)

Al instalar nuestro sitio multi-idioma en Drupal, en algunos casos nos encontraremos con la necesidad de que el selector de idiomas (Language Switcher), que viene con Drupal, muestre los nombres abreviados para cada indioma, ya que por defecto mostrará su nombre completo. En principio, para cambiarlo sólo deberíamos acceder a la url de configuración del módulo Language, previamente activado, accediendo a "/admin/config/regional/language" y allí seleccionar EDITAR y cambiar el nombre del idioma Ej. English a EN, pero esto no funciona correctamente y sólo te cambia el resto de los idiomas.

Para solucionarlo, tendremos que añadir en nuestro archivo TUTEMA.theme, la siguiente función, cambiando sólamente en nombre equivalente a tu tema.

Obtener IDs usando preprocess function Drupal 7/8/9

A partir de Drupal 8, con la orientación a objetos se efectuaron grandes cambios...

Debido a que las propiedades del objeto de nodo están protegidas, no podremos acceder a ellas directamente de la forma en que lo hizo en el código de Drupal 7.

Por esta razón, si deseas usarlas en funciones de preproceso, deberás usar las funciones de obtención relevantes para acceder a ellas.

A continuación, se muestran algunos ejemplos en los que deberá cambiar la forma en que accede a las propiedades: