La API de fuentes web propuesta no llegará a WordPress 5.9, posiblemente aterrice primero en Gutenberg
Publicado: 2021-11-12Después de lo que parecía ser una apuesta segura para WordPress 5.9, se suspendió una API de fuente web propuesta. La función estandarizaría la forma en que los desarrolladores de complementos y temas cargan las fuentes y sentaría las bases para futuras funciones orientadas al usuario.
Jono Alderson abrió un boleto para la función en febrero de 2019. En los últimos meses, la propuesta se aceleró. La solicitud de extracción tenía más de 200 mensajes en el ticket, 93 confirmaciones y la aprobación del código de dos confirmadores principales. La API parecía lista. Sin embargo, se paralizó en los últimos días.
Andrew Ozz, un desarrollador líder de WordPress, esencialmente detuvo la posibilidad de que la nueva API aterrizara en 5.9. Dijo que no creía que la propuesta estuviera lista para WordPress.
“Simplemente como código, se ve bien”, escribió en el ticket. “Está muy bien documentado (¡gracias [Tonya Mark]!). Sin embargo, todavía no puedo ver cómo esto mejoraría WordPress a corto y largo plazo. Estábamos charlando con [Andrei Draganescu] y sugirió que, idealmente, debería haber sido un complemento de funciones, y estoy de acuerdo. Entonces habría sido posible probarlo realmente en producción, verificar (o rechazar) las suposiciones que se hicieron al crearlo y convertirlo en una adición realmente valiosa a WordPress. Desafortunadamente, es demasiado tarde para esto ahora para 5.9".
Uno de los problemas con los complementos de características de prueba para las API es que no se adoptan con frecuencia, como otros señalaron en el ticket. Los desarrolladores no confiarían en ellos en la producción en la mayoría de los casos. Y el usuario final promedio no instalaría algo específico para desarrolladores.
“Sugerir que esto se haga como un complemento de funciones es una forma elegante de retrasar algo durante unos años”, dijo Ari Stathopoulos, uno de los desarrolladores detrás de la API. Sin embargo, señaló que la API REST es una excepción que funcionó lo suficientemente bien como para trasladarse a WordPress.
La propuesta central de WordPress probablemente se incluirá en el complemento de Gutenberg para una mayor exploración. Esto sería una especie de compromiso entre el lanzamiento como un complemento de función independiente y el paso a WordPress 5.9.
La API de fuentes web no está directamente relacionada con el sistema de bloques. Tanto los temas tradicionales como los de bloque, así como los complementos, podrían hacer uso de la función hoy. Sin embargo, varias propuestas de Gutenberg se basan en la existencia de la API, como permitir que los autores de temas definan fuentes web a través de sus archivos theme.json .
Ozz enumeró varias preguntas sobre la propuesta y varios desarrolladores respondieron a cada una. Sin embargo, su argumento principal giraba en torno a la practicidad de por qué todo en la API era necesario, afirmando que las respuestas anteriores habían sido "en principio" y parecían estar basadas en suposiciones.
En el nivel más básico, la API de fuentes web permitiría a los desarrolladores registrar y cargar fuentes alojadas localmente o las de Google Fonts. Los desarrolladores también podrían agregar proveedores personalizados fuera de los dos predeterminados. La primera iteración de la API propuesta se trataba más de establecer una base sobre la cual construir en futuras versiones de WordPress.
El atractivo de la función no es simplemente cargar fuentes. Técnicamente, los autores de temas podrían hacerlo con una sola línea de código si quisieran. Cuatro líneas de código si querían seguir los estándares centrales actuales de WordPress, al menos en la parte delantera.

Stathopoulos recitó una lista de mejoras que dicha API traería a WordPress y sus extensiones.
- Los temas podrían definir fuentes a través de sus archivos
theme.json. - Vistas previas de fuentes en el selector de familias de fuentes en el editor.
- Mostrando estilos y pesos de fuente válidos para una familia de fuentes.
- Rendimiento frontal mejorado.
- Localización del lado del servidor para un mejor rendimiento y privacidad.
Esta fue una pequeña muestra de los argumentos a favor de incluir la API en el núcleo de WordPress.
“Hay muchas mejoras en Gutenberg que están en el limbo, esperando una API de fuentes web”, escribió Stathopolous en el ticket. “No tener una API de fuentes web es un obstáculo en este momento. No es un artículo bueno para tener en nuestra lista de deseos, es un requisito para seguir adelante”.
Actualmente, ningún estándar se relaciona específicamente con las fuentes web en WordPress. Los autores de temas aprovechan las funciones existentes para poner en cola una hoja de estilo de terceros o una personalizada con reglas @font-face . Esa ha sido una práctica generalmente aceptada en la comunidad de autores de temas a lo largo de los años.
Sin embargo, muchos lo han aceptado a regañadientes. Varios han creado scripts personalizados para aliviar los puntos débiles. Muchos otros simplemente copian cualquier método que esté usando el último tema predeterminado de WordPress.
Uno de los objetivos es lograr que los desarrolladores no tengan que preocuparse por hacer todo el trabajo adicional relacionado con la carga de fuentes web. Realmente no debería haber necesidad de que un tema averigüe cómo cargarlos tanto en el editor como en el front-end, manejar la precarga o dar cuenta de la localización. A medida que los temas envejecen y las API de terceros como Google Fonts cambian, no habría necesidad de que los temas se actualicen si WordPress se encarga de ello.
El problema de cuál es la mejor manera de cargar fuentes web se multiplica cuando agrega complementos a la mezcla. En general, los temas hacen todo el trabajo pesado cuando se trata de diseño. Sin embargo, algunos complementos saltan a ese lado del mundo de WordPress para agregar opciones de estilo adicionales. No hay forma de resolver conflictos cuando se cargan varias copias de la misma fuente. Tampoco hay formas seguras de deshabilitar las fuentes de un tema y reemplazarlas a través del complemento.
Uno de esos autores de complementos me envió un correo electrónico para informarme las noticias que ya conocía. La API de fuentes web parecía no aterrizar en WordPress 5.9. El desarrollador se estaba preparando para lanzar un nuevo sitio web y un servicio además de la nueva función. Incluso tenían una mascota. A partir de ahora, es posible que solo tenga que esperar.
La fecha límite de congelación de características fue hace dos días. Por lo tanto, es poco probable que la API de fuentes web se vuelva a agregar al hito de WordPress 5.9. Tal vez los desarrolladores lo vean cuando llegue la versión 6.0. Tal vez empujarlo al complemento de Gutenberg le da un poco más de vida, lo que permite a los colaboradores avanzar con nuevas funciones que dependen de él.
