Mientras revisaba el código fuente, vi que WordPress usa jQuery v1.12.4. ¿Por qué WordPress usa esta versión desactualizada de jQuery?
Mientras revisaba el código fuente, vi que WordPress usa jQuery v1.12.4. ¿Por qué WordPress usa esta versión desactualizada de jQuery?
Respuestas:
Hay muchos temas y complementos que usan jQuery como lo carga WP core. Cada vez que se actualiza jQuery, existe el riesgo de que se rompan temas y complementos antiguos (porque muchos de ellos todavía se usan pero ya no se actualizan). Es por eso que también ves jquery-migrate.js
en tu código fuente. Es un script que detecta las funciones antiguas utilizadas por los complementos / temas y se asegura de que aún funcionen en versiones más nuevas de jQuery.
Pasar a la 3.x
familia jQuery provocaría que se rompieran muchos complementos / temas, porque no es posible tener un script de migración para todo lo que está en desuso. Es por esto que las nuevas versiones de la 1.x
familia todavía se están desarrollando mientras que el 2.x
y 3.x
familias ya existía. No habrá nuevas 1.x
y 2.x
versiones posteriores 1.12
y 2.2
, a excepción de parches (de seguridad). Aunque jQuery 1.12
no está desactualizado en este momento, lo estará en el futuro cercano.
Entonces, WordPress está en apuros. Si no se actualiza a una versión superior de jQuery, no puede mantenerse al día con nuevas posibilidades. Sin embargo, si se actualiza, los sitios más antiguos se romperán. El resultado más probable es que WP esperará un par de años, por lo que los temas / complementos más antiguos se eliminarán gradualmente de todos modos, y luego pasarán a la 3.x
familia .
Aclaración
Lo anterior puede sugerir que la migración de 1.x
versiones a 3.x
no es realmente posible. Eso no es cierto. Es solo un poco complicado. El truco consiste en actualizar primero 1.12
, depurar el resultado utilizando el script de migración anterior y luego agregar el 3.0
script de migración, que funciona 1.12
. Instrucciones detalladas aquí .
Actualización de seguridad
Los desarrolladores notarán que Google Dev Tools / Lighthouse informa que los sitios de WordPress son vulnerables debido a la presencia de esta versión anterior de jQuery, o eso parece. En efecto, todo lo que hace Lighthouse es verificar si esta biblioteca tiene vulnerabilidades mencionadas en la Base de datos de vulnerabilidades de Snyk . Si verifica esto en detalle, encontrará que la versión 1.12.4 está limpia. Dado el amplio uso de 1.12.4, puede contar con cualquier vulnerabilidad grave que se aborde rápidamente.
Para ser aún más correcto.
La rama 1.x incluye soporte para IE 6/7/8 y la rama 2.x no.
https://blog.jquery.com/2016/05/20/jquery-1-12-4-and-2-2-4-released/