WPML

Acabamos de publicar la versión 4.3 de WPML, que incluye una forma completamente nueva de traducir cadenas. El panel de administración de Traducción de cadenas tiene el mismo aspecto, pero funciona de manera diferente. En lugar de leer las traducciones de la base de datos, genera y carga archivos .mo. Esto da como resultado un uso mucho más ligero de la base de datos para la traducción de cadenas.

¿Por qué reescribimos Traducción de cadenas?


La versión anterior de la traducción de cadenas cargaba las cadenas desde la base de datos e intentaba evitar la carga de archivos .mo. Algunos de los plugins de WordPress más grandes vienen con enormes archivos .mo, que traducen todos y cada uno de los textos del plugin. Por ejemplo, los archivos .mo de WooCommerce tienen un poco más de 8.000 cadenas. Otros plugins grandes tienen recuentos de cadenas similares.

Cuando ejecuta un sitio en inglés, WordPress no carga estos archivos .mo. Sin embargo, cuando ejecuta un sitio en cualquier otro idioma (solo un idioma, no sitios multilingües), WordPress cargará todos estos archivos .mo. La carga de estos archivos tarda entre 100 ms y más de un segundo, dependiendo del servidor que esté utilizando. Estos archivos .mo se cargarán en cualquier página en la que se ejecute el plugin (normalmente, en todas las páginas del sitio).

Hasta WPML 4.3, intentábamos optimizar este mecanismo. WPML tenía una opción, que estaba activada de forma predeterminada, para evitar que el tema y los plugins cargaran archivos .mo. En su lugar, comprobábamos qué cadenas eran necesarias para cada página y cargábamos estas cadenas específicas desde la base de datos.

El mecanismo funcionaba bien en general, pero a veces resultaba contraproducente. Cuando un plugin consultaba muchas cadenas en cada carga de página, WPML cargaba una enorme lista de cadenas desde la base de datos en lugar de permitir que el plugin cargara su propio archivo .mo.

A medida que algunos plugins crecían con el tiempo, nuestro mecanismo de optimización se volvía cada vez menos eficiente.

En WPML 4.3 decidimos que era hora de cambiar el enfoque. Hemos dejado de bloquear los archivos .mo y hemos dejado de cargar cadenas desde la base de datos. Ahora WPML no intenta optimizar los tiempos de traducción de otros plugins o temas, y solo optimiza sus propias cadenas.

¿Cómo afectará esto al tiempo de carga de su sitio?


Depende. Si su sitio era rápido hasta ahora (como la mayoría de los sitios que usan WPML), no sentirá un cambio significativo en la velocidad. Por ejemplo, en wpml.org, la mayoría de las páginas son un poco más rápidas y unas pocas tardan un poco más en cargar.

La razón por la que algunas páginas tardan un poco más en cargar ahora es porque hay otros plugins que cargan enormes archivos .mo. El aumento de velocidad derivado de la optimización de las traducciones de cadenas se ve anulado por los tiempos de carga de los archivos .mo de otros plugins.

Sin embargo, estas fluctuaciones son muy pequeñas y solo podemos medirlas con herramientas avanzadas de análisis de rendimiento. Un sitio web que funcionaba rápido hasta ahora, por lo general, seguirá funcionando rápido con WPML 4.3.

Algunos sitios web que sufrían tiempos de carga lentos ahora cargarán mucho más rápido. Antes de WPML 4.3, algunos sitios web tenían decenas de miles de cadenas que cargar desde la base de datos. Esto causaba una carga significativa en la base de datos, consumía mucha memoria RAM y provocaba largos tiempos de carga de las páginas. Estos sitios verán una mejora muy significativa en el rendimiento.

¿Habrá más optimizaciones de rendimiento?


Sí. Ahora que hemos eliminado los principales problemas de rendimiento derivados de la traducción de cadenas, tendremos más oportunidades de optimización.

Esperamos encontrar problemas que requerirán trabajar con los autores de otros plugins y temas. El rendimiento mejora al máximo cuando los plugins y temas cargan menos cadenas. La mayoría de los autores de otros plugins y temas están encantados de colaborar con nosotros y confiamos en que podremos resolver casi cualquier problema de rendimiento que surja a continuación. El proceso de optimización es casi siempre el mismo:


  • Dividir los archivos .mo enormes en varios archivos más pequeños

  • Cargar los archivos correctos en las páginas correctas

La segmentación trivial se da entre las cadenas que se utilizan en el panel de administración y las cadenas que se muestran en el front-end. Las optimizaciones más profundas dividen aún más las cadenas del front-end según el tipo de página. Por ejemplo, en los sitios de comercio electrónico, no hay necesidad de cargar las cadenas utilizadas en el proceso de finalizar compra en todas las páginas.

Por supuesto, cuando hay una oportunidad de optimización dentro del propio WPML, nos encargamos de ello inmediatamente.

Actualice, mida e informe


WPML 4.3 se está implementando en este momento. Lo estamos publicando gradualmente a lo largo de una o dos semanas. Si sus sitios aún no han recibido esta actualización, dele un poco de tiempo y verá la actualización en unos días. Puede saltarse la cola y obtener esta actualización de inmediato yendo a la página Plugins –> Añadir nuevo, haciendo clic en la pestaña Comercial y luego utilizando el botón Buscar actualizaciones .

Si siente que alguna página de su sitio tarda más en cargar, le sugerimos que instale el plugin Query Monitor (siga nuestro tutorial sobre cómo analizar problemas de rendimiento con Query Monitor). Tenga en cuenta que en WPML 4.3 corregimos problemas de compatibilidad significativos con Query Monitor, por lo que los informes que vea no son útiles para versiones anteriores a WPML 4.3.

Compruebe si las llamadas de WPML destacan en los informes de carga. Si es así, infórmenos en el soporte técnico de WPML. Incluso si ve hilos que parecen similares, inicie el suyo propio. Necesitaremos acceso a su sitio, por lo que es mejor trabajar en cada sitio por separado.

Por supuesto, estaremos encantados de conocer sus novedades generales sobre el rendimiento (es igualmente útil informar de las mejoras 🙂). Deje sus comentarios aquí y nos pondremos en contacto con usted.

¿Le ha resultado útil? Comparta este artículo: