Drupal 10.1 llega cargado de novedades

Novedades de Drupal 10.1

Desde que Drupal 8 cambió la manera en la cual las novedades iban a llegar en periodos de 6 meses, no recuerdo una versión con tantas novedades como Drupal 10.1, y es que incluye muchísimas. Con el lanzamiento de Drupal 10.0 y 9.5 apenas hubo novedades relevantes, lo cual es normal ya que estaban centrados en el lanzamiento de la nueva versión mayor.

Vamos a repasar las novedades más importantes que tenemos en esta nueva versión de Drupal, y aunque vayamos a ver las más relevantes, veremos que son muchas, y es que han añadido muchísimas cosas y movido otras de sitio.

 

 

CKeditor ahora respeta la cantidad de líneas

Mucha gente se habrá encontrado que en Drupal 10.0 y en Drupal 9, el CKeditor 5 no respetaba la cantidad de líneas que se veían por defecto al abrir el editor, esto es algo que ahora es posible en Drupal 10.1.

Editables las líneas del CKeditor 5

Algunos podían considerar esto un bug, pero por las políticas de Drupal esto es una nueva característica, de modo que no se podía añadir esto en Drupal 10.0. (https://www.drupal.org/node/3330010)

Limitad editores disponibles

Algo extremadamente útil en ciertos sitios es limitad que editor de texto se puede usar, usualmente se usan los permisos para limitar que editores de texto puede usar cada usuario, y esto está muy bien, pero en algunos casos más concretos, es necesario limitar que editor se puede usar en que campo.

Bueno, pues ahora en Drupal 10.1 es algo que podremos hacer desde la configuración del campo que use el editor de texto.

Mejoras adicionales en el editor

Se han añadido varias mejoras en el editor para la experiencia de los editores, y vamos a repasarlas ahora agrupadas.

Un nuevo botón disponible el cual nos permite añadir secciones de código he indicar de que lenguaje es, esto es muy útil ya que nos permite formatear y colorear correctamente el código con librerías javascript de una manera muy sencilla. (https://www.drupal.org/node/3356871)

Listado de lenguajes disponibles en CKeditor 5

Otra mejora se aplica a las imágenes, y es que de ahora en adelante el editor de texto soporta el lazy loading de las imágenes insertadas directamente en el editor, eso supone una mejora importante de redimiendo. (https://www.drupal.org/node/3279029)

Nuevo diseño para las operaciones en masa

Esta es una mejora menor, pero facilita mucho el visualizar mejora y de nuevo, la experiencia de usuario. Y es que, en la parte administrativa, han añadido un nuevo diseño que mejora el aspecto de las operaciones en masa, esto podremos probarlo fácilmente desde la página de contenido, seleccionando múltiples nodos veremos una barra negra, pues esa es la mejora. (https://www.drupal.org/node/3329996)

Nuevo batch en Drupal 10.1

Nuevos permisos para los bloques

Vamos ahora a comentar un par de mejorar que se han añadido a los bloques, la primera es que ahora disponemos de permisos individuales para los diferentes tipos de bloques personalizados.

Esto puede parecer una mejora menos, pero realmente acerca mucho los bloques personalizados a los nodos en lo relacionado con los permisos y también afecta a la experiencia de usuario de los editores en layout builder, y es que ahora solo verán los bloques que puedan utilizar, no el resto. (https://www.drupal.org/node/3041203)

Movida la sección de los bloques personalizados

Esto es algo a lo que nunca llegue a verle sentido, y es que los tipos de bloque estaban en una pestaña de la sección de diseño de bloques, lo que provocaba que estuviera un poco escondido.

Los tipos de bloques movidos a su nueva ubicación

De ahora en adelante, estarán directamente en la sección de estructura, un lugar más adecuado ya que realmente es donde debería estar, ya que es parte de la estructura y se encuentra junto a los tipos de nodo, tipos de media, tipos de comentarios... (https://www.drupal.org/node/3320855)

Los bloques ahora son revisionables

Esto es una medio novedad, y es que los bloques ya tenían revisiones (como los nodos) desde hace varias versiones de Drupal, el problema era que solo a nivel de código se podía gestionar. Pues ahora ya disponemos de una interfaz para poder gestionar las revisiones de los bloques fácilmente. (https://www.drupal.org/node/3319245)

Las imágenes adaptativas ahora soportan lazy loading

Esto es algo que faltaba por añadir, y es que hace pocas versiones de Drupal se añadió soporte para el lazy loading de las imágenes, pero solo para las imágenes "normales", es decir, las que no se adaptaban al dispositivo.

Pues de desde Drupal 10.1, ya podremos utilizar lazy loading para las imágenes cuando usemos las imágenes adaptativas por dispositivo. (https://www.drupal.org/node/3279032)

Tema administrativo en Views

Esto es algo que para quienes desarrollen sitios web con una sección administrativa avanzada pero fuera del path /admin les resultará muy útil, y es que en Views podremos escoger si utilizar el theme predefinido o el administrativo. (https://www.drupal.org/node/2917575)

Admin theme en Views está ahora como opción disponible

Nuevo módulo experimental Anouncements

Drupal está intentando mejorar mucho la experiencia de usuarios para traer a nuevos desarrolladores, pues han añadido un nuevo módulo experimental, el cual permitirá ver los anuncios de la comunidad de Drupal directamente desde nuestro propio sitio web. Con esto esperan que la gente esté más informada sobre las noticias de la comunidad. (https://www.drupal.org/node/3355762)

Nuevo módulo experimental Single Directory Components

Este módulo llega con la intención de revolucionar el frontend y la reusabilidad de componentes para acelerar el desarrollo de los sitios web en Drupal permitiendo la creación de componentes reutilizables.

Se espera que la comunidad cree muchos componentes para poder usarlos y como se ha comentado, acelerar el desarrollo de una web.

Listado de módulos experimentales

De momento está como módulo experimental pero ya se considera completo a nivel de API, de modo que como desarrolladores podríamos comenzar a usarlo sin ningún tipo de problemas. (https://www.drupal.org/node/3355112)

Mejoras para desarrolladores

Después de repasar las mejoras más importantes para el site building, vamos a ver algunas a nivel de código. Y es que también ha habido muchas mejoras y algunas son bastante relevantes.

Modificado el cifrado de las contraseñas

Hasta esta versión, Drupal tenía su propio sistema para el cifrado de las contraseñas (disculpad si no es el termino correcto), y a partir de la 10.1, se ha cambiado por uno ofrecido por PHP, lo cual reduce el código propio de Drupal haciéndolo más estándar.

Lo más importante de esta novedad, es que si partimos de una instalación limpia de Drupal 10.1, no tendremos que hacer nada, pero si venimos de un sitio existente, un nuevo módulo se nos instalará para poder mantener la compatibilidad. 

Lo mejor en este caso, es que nos leamos el changelog completo para saber exactamente que han hecho.

Interfaz para activar debug de twig

Esto es algo extremadamente útil para todo desarrollador, y es que ahora dispondremos de una interfaz para poder desactivar la caché de Twig y activar su modo debug. (https://www.drupal.org/node/3359728)

Interfaz genérica para revisiones

Se ha añadido una interfaz genérica para las revisiones de las entidades. Esto es una mejora enorme y es que ahora ya no será necesario desarrollar toda la interfaz para gestionar las revisiones de una entidad. (https://www.drupal.org/node/3160443).

Big pipe ahora permitirá place holders

Esta es una mejora de desarrolla para poder mejorar la experiencia de usuario, y es que cuando se usa big pipe es bastante molesto ver como aparecen bloques espontáneamente en la interfaz. Ahora dispondremos de una opción para poder añadir un place holder para que el usuario sepa que algo se añadirá a esa sección. Esto junto a una librería de javascript para poner un icono de carga, mejor mucho la experiencia de usuario. (https://www.drupal.org/node/3338948)

Nuevos filtros en twig

Para mejorar la experiencia de desarrollo en twig, se han añadido dos nuevos filtros, uno llamado "add_class" y otro "set_attribute", como los propios nombres indican, uno nos servirá para añadir una clase y el otro para poder añadir un atributo. Hasta ahora teníamos que utilizar la clase de Attributes para realizar este tipo de añadidos, ahora será más sencillo. (https://www.drupal.org/node/3334294)

Autowire de servicios del core

Esta es una novedad que nos ayuda muchísimo a la hora de desarrollar, y es que los servicios se añadirán automáticamente a otros servicios si se configuran correctamente. Esto es algo que añadieron en Drupal 10.0 pero a última hora tuvieron que quitarlo debido a un bug encontrado en Symfony.

Sabiendo como hacerlo, esto es posible desde Drupal 8.6 aproximadamente, pero implicaba una configuración extra por parte del desarrollador bastante molesta. Pues ahora ya no será necesario configurar nada para poder usar esta característica. (https://www.drupal.org/node/3323122)

Librería moderniz marcada como obsoleta

El mundo del frontend ha avanzado mucho en los últimos años, y librerías como está ya no son necesarias ya que han sido reemplazadas por otras más modernas. Debido a ello, la han marcado como obsoleta y en Drupal 11 ya no estará disponible, lo recomendable en este caso es dejar de usarla. (https://www.drupal.org/node/3333253)

Estas que hemos visto son las novedades más relevantes para Drupal 10.1.0. Si queremos verlas todas lo recomendable seria que fuéramos al change record, ya que hay muchísimas novedades, especialmente en lo relacionado con el código, y es que podemos llevarnos alguna sorpresa.

Y en esta versión hay tantas novedades, que da la impresión de que las han ido guardando y no se pudieron añadir durante el ciclo de desarrollo de Drupal 9.5 y Drupal 10, pero es normal ya que se estaban centrando en el lanzamiento estable de una versión mayor.

Comparte este artículo:
Publicado por Borja
Image

Me metí en la aventura de Drupal con la versión 6, y aquí estoy, 10 años después, escribiendo articulos y haciendo videos sobre Drupal, quien me lo iba a decir. Aunque he probado otros framworks y cms, me quedo con Drupal de lejos, pero Symfony y Django estan entre mis favoritos. Aficionado a la montaña, la bicicleta, y el comer, de eso que no falte.