117. Y más cosas que no sabíamos de WordPress 6.1

Siguen apareciendo las novedades de WordPress 6.1, y parece un camino interminable de cambios, optimizaciones y mejoras, grandes y pequeñas.

Recuerda que puedes escuchar este programa desde Pocket Casts, Spotify, Google Podcasts, Apple Podcasts e iVoox o suscribirte al feed directamente.

Transcripción del programa

Hola, soy Javier Casares y estás escuchando WordPress Podcast, el resumen de noticias de la Comunidad WordPress. En este programa encontrarás la información del 10 al 16 de octubre de 2022.

El último programa comenzaba con un “cosas que aún no sabíamos de WordPress 6.1 y que te van a interesar”, pues esta semana es más de lo mismo, porque siguen apareciendo más novedades, cambios y optimizaciones como hacía muchísimas versiones anteriores que no veíamos.

Comenzamos con WordPress Multisite, que ha hecho cambios en el sistema de almacenamiento de metainformación.  Ahora la información quedará mucho mejor separada entre lo que es la red y el sitio, con las mejoras correspondientes en llamadas a la base de datos. A esto se le une el almacenamiento del identificador de la red en las opciones de la red, lo que hará que los sitios con WordPress Network también incrementen su rendimiento.

Y hablando de WordPress MultiSite, en este caso WordPress MU, su precursor, hay que tener en cuenta que se han eliminado los Global Terms.

Este sistema venía desde WordPress 3.0, pero dejó de funcionar en WordPress 3.5. Cuando llegó WordPress 4.2 se introdujo el sistema nuevo de términos y que acabó quedando completamente obsoleto con WordPress 4.4 cuando todo el sistema ya tenía sustituto. Ahora, con WordPress 6.1 toda esta tecnología se va a eliminar del núcleo.

Otro de los elementos con mejoras es la REST-API, usada principalmente por sistemas no-code y aplicaciones externas, también ha incluido mejoras de optimización para las respuestas con código de enlaces, o aquellos elementos que se repiten, como podría ser los datos de un mismo autor y que se encuentran en caché.

En cuanto a funcionalidades, vamos a poder buscar contenidos sin saber su ID, incluir o excluir contenidos de un listado, o buscar aquellos contenidos que incluyan un bloque determinado.

Para acabar, se puede activar el modo “bonito” del JSON, para que en vez de devolverse minimizado y en una línea, venga con un formato legible para humanos.

Y si hablamos de mejoras de rendimiento, las cachés se van a convertir en un elemento básico de cualquier instalación de WordPress.

Las principales mejoras se encuentran en la Caché de Objetos con nuevas funciones que afectan principalmente a los temas, además de nuevas funciones como wp_cache_flush_group() que permite limpiar todo un grupo de cachés, o wp_cache_supports() para saber si u plugin o tema soporta determinadas funcionalidades de caché.

Pero no sólo de caché se vive, teniendo mejoras en el Media, con los atributos de imagen decoding=»async», o la carga de lista del Media que podrá estar cacheado.

A nivel de cabeceras HTML, se implementa de forma nativa el uso del rel=’preload’.

Y un cambio importante en el funcionamiento de carga de las páginas lo tenemos en las cabeceras HTTP. Esto va a permitir mejoras en el comportamiento de la caché, poder inyectar cabeceras de precarga o mejoras en redirecciones y la gestión de códigos 300 o 400.

Actualmente las cabeceras se envían justo antes de leer los datos de la URL y la consulta principal de la página. A partir de ahora se hará después de ejecutar la consulta principal, lo que permitiría que dependiendo del resultado de esa consulta se pueda hacer una redirección o solicitar una página de error y actuar en consecuencia.

En referencia al Editor, muchas más novedades. Para la accesibilidad, se va a poder inyectar código ARIA a los bloques que contengan HTML que lo necesite.

Aunque si hemos de ver accesibilidad, los temas 2022 y 2023 ya tienen la etiqueta “accesibility ready”, además de haber incluido 15 mejoras en el panel de administración, mejorado toda la pantalla de login y más de 40 mejoras en el Editor.

Y algo que ha evolucionado desde WordPress 6.0 es la posibilidad de que, al comentar un tipo de contenido nuevo, por defecto en vez de aparecer la página en blanco, se pueda incluir un patrón por defecto. Por ejemplo, si tienes un contenido de tipo coche, al crear un nuevo Coche, no comenzar con el lienzo en blanco sino poder ver un patrón que incluya una cabecera, una foto y Loren Ipsum y un pie de contenido, de forma que el redactor sólo tenga que modificar esa plantilla base.

El bloque de Destacado ya permite el funcionamiento del Duotono en la imagen de fondo y los Enlaces Sociales permiten enlazar a direcciones de correo

También vamos a tener un nuevo tipo de diseño: el diseño restringido. Hasta ahora cuando añadíamos un bloque, este se adaptaba al ancho completo de la ventana, o al ancho de su bloque superior, su contenedor. Ahora tenemos un diseño restringido al que podemos darle un ancho concreto que deberá cumplir por defecto.

Aunque si no te gusta ningún sistema de los que viene, siempre podrás un “disable-layout-styles” y desactivar por completo la funcionalidad en el tema.

Como curiosidad, y que también es una mejora, a partir de ahora tus preferencias en el editor se van a guardar en la base de datos lo que hará que sean consistentes. Esto va a permitir que, al entrar en cualquier dispositivo o navegador, si habías configurado que el Editor se viera con todos los menús activos, vas a seguir teniendo esa configuración en todos y no sólo en el navegador donde se configuró.

Los creadores de formularios están de enhorabuena. Sí, pude parecer raro, pero se han añadido funciones y hooks específicos para aquellos campos en formularios que son obligatorios y que normalmente se marcan con un asterisco.

Y es que los lectores de pantalla no son capaces de leer si un campo es obligatorio o no tal y como funcionaban hasta ahora, así que como una gran mejora de accesibilidad se ha incluido este soporte de forma nativa en el núcleo de WordPress.

En cuanto a los Bloques en general, se han hecho mejoras en el block.json.

Los bloques se van a poder renderizar mediante PHP, indicando la ruta del fichero que ejecutará las acciones cuando se guarde.

Por otro lado, se han separado los scripts en 3 niveles: editar, visualizar y el normal. De esta forma, se ejecutará script distinto según el momento y se podrá reducir el que se necesita para el usuario.

Además, para los desarrolladores que usan boques del núcleo, ya es posible llamarlos por separado y no tener que descargar el uso de todos.

Para los creadores de bloques también vienen novedades con algo que se preguntaba bastante: la creación de estilos. Para esto se ha incluido el Style Engine, el agente responsable de centralizar la generación y render consistente de los estilos de bloques tanto en el servidor como en el cliente.

Reducción de código, nuevas funciones para llamar y procesar los estilos, funciones JavaScript para compilar o acceder a los CSS, y como siempre, retrocompatibilidad. Eso sí, este nuevo sistema por ahora sólo da soporte a bordes, colores, espaciado y tipografía.

Recordemos que se han normalizado las herramientas de estilos en todos los bloques posibles, de forma que prácticamente todos los bloques van a permitir las mismas herramientas de colores, tipografías, espaciados o duotono.

Pero la cosa no queda aquí, ya que también se incluye una estandarización de algunos contenidos del theme.json. En WordPress 6.1 se pueden dar estilos a botones, leyendas, citas y cabeceras.

A esto hay que sumarle los estados interactivos, como el active, focus o hover, que también afectaría a los elementos que hay anidados en los bloques.

Y si hablamos del theme.json una novedad interesante para aquellos que se han preguntado cómo se podrían modificar desde el exterior mediante funciones. Pues ya es posible gracias a varios hooks que permiten el acceso a los datos por defecto, bloques, tema y usuario.

Este sistema, por ejemplo, permitiría desde un plugin o tema añadir una nueva paleta de colores creando una función y añadiendo el filtro correspondiente.

También se han incorporado las referencias al theme.json. Por ejemplo, si quieres que el color de un botón sea el color por defecto, puedes referenciarlo al estilo existente. De esa forma cuando se cambie un color en un sitio, automáticamente se cambiará en el resto.

Y en un nivel bastante avanzado, tenemos algunos cambios en componente internos de WordPress, algunos de ellos ya con fecha de caducidad.

El primero el Popover que prácticamente se ha reescrito; el sistema CustomSelectControl que permite la selección de elementos, y que por defecto usará el 100% del ancho de los elementos padre, y que será ya el estándar en WordPress 6.4.

Para acabar, algunos elementos con márgenes que quedarán obsoletos, y que hacen referencia principalmente a selectores.

Para acabar la ronda de novedades, tenemos los cambios del bloque Query Loop que ya admite variaciones.

Con esto podríamos crear una variación específica para un Custom Post Type de libros en el que se muestren 10, ordenados por novedad descendiente con sólo unas pocas líneas de código, ofreciendo al usuario una plantilla de resultados de contenido con un clic.

A nivel general, algunos cambios que merecen mención:

Las nuevas funciones is_term_publicly_viewable(), para saber si una taxonomía se puede mostrar, o la función did_filter() que devuelve cuántas veces se aplican filtros.

El cambio en la función add_settings_section() que permite pasarle las secciones, antes, durante y después.

Varios nuevos filtros como wp_read_audio_metadata, pre_option, ajax_term_search_results, get_header_image, wp_list_table_class_name, lost_password_html_link, wp_send_new_user_notification_to_admin y wp_send_new_user_notification_to_user.

A los listados de usuarios como wp_list_authors() o wp_list_users() se les va a poder pasar algunos filtros, de forma que no se traiga toda la información sino que puedas pedir los datos que necesitas.

También hay más granularidad en feed_links() y the_posts_pagination().

Además, se ha incluido un nuevo proveedor oEmbed: Pocket Casts.

Y, así a modo general, algunas otras cosas que se han cambiado:

  • Los SuperAdministradores pueden crear un Application Password en cualquiera de los sitios.
  • La nueva categoría de Pies de Página en los patrones.
  • Actualización de librerías externas como PHPMailer, jQuery, Moment o Sodium.
  • Permiso para usar en los CSS las funciones min, max, minmax y clamp.
  • O el uso de la rotación del EXIF de imágenes.

Todo esto es sólo una parte de lo que viene con WordPress 6.1, y lo que todavía queda por llegar.

Y hablando de lo que va a llegar, todo esto lo sabemos porque ya ha aterrizado WordPress 6.1 Versión Candidata 1, que ya bloquea cualquier cambio en el sistema y se centra en corregir errores que puedan ir apareciendo. Así que, si tienes sitios en desarrollo, ya es el momento de instalar esta nueva versión y validar que todos los plugins, temas y componentes funcionan con normalidad. En las próximas semanas deberían aparecer la versión 2 y 3, para que el 1 de noviembre tengamos la versión final.

Y aprovechando el lanzamiento de todas las novedades de WordPress 6.1 también se ha lanzado WP-CLI 2.7.0 con caso 200 cambios.

Lo más destacado es el soporte a docker-compose-run, la posibilidad de personalizar de forma global los parámetros, poder descargar el Core de WordPress, pero no extraerlo o instalar directamente con una edición local.

También se ha creado la función clean-duplicates para eliminar los metadatos duplicados de un contenido.

Y siguiendo con las novedades, el plugin Gutenberg 14.3 incluye algunos elementos experimentales como el usar Alt + Flechas, arriba y abajo, para moverse por los bloques en el editor.

También, si arrastras una imagen a un bloque de párrafo que no tenga contenido, automáticamente se convertirá en un bloque de imagen.

El equipo de Core está buscando propuestas de mejora de interoperabilidad entre navegadores para 2023. Gracias a la extensión de WordPress, se ha ayudado a la mejora en la implementación del funcionamiento en los distintos navegadores de algunas funcionalidades que se usan en WordPress.

El equipo de Test nos invita de forma oficial a probar el Plugin Dependencies. Este plugin permite incorporar la funcionalidad para que los plugins puedan informar de las dependencias de otros plugins, con el objetivo de integrar esta funcionalidad, de forma nativa, en WordPress 6.2.

El equipo de Design está preparando el diseño del que podría ser el bloque Navigation Overlay, un menu de navegación que se superponga por encima de toda la pantalla.

El equipo Polyglots recuerda que con el lanzamiento de WordPress 6.1 RC 1 ya está disponible la posibilidad de traducir todo WordPress 6.1. Alrededor de 60 idiomas ya están por encima del 90% de sus traducciones finalizadas, entre ellas el español, gallego, catalán,  euskera o aragonés.

El equipo de Mobile, junto al de Sistemas, están preparando la redirección de iOS, Android o iPhone punto wordpres.org a las páginas correspondientes de WordPress.ORG y no a las de WordPress.COM como actualmente ocurre.

El equipo de Meta tiene una petición para cambiar el nombre Support del menú general de navegación por Documentation. Ya existen datos de todo el mes de septiembre y el nuevo menú ha incrementado el tráfico de algunas partes de la web que previamente no estaban enlazadas, y se quiere hacer este experimento, ya que la zona de Soporte actual indica en todo momento la existencia de documentación.

Y, para acabar, ya sabes que tienes todos los enlaces para ampliar la información, en WordPress Podcast .es.

Un abrazo, y hasta el próximo programa.

Deja un comentario