Universally traduce el HTML que tu servidor envía. Todo lo que esté presente en esa respuesta se traduce, sin importar quién lo haya generado. El contenido que un script obtiene e inserta después de que la página se carga no está en esa respuesta, por lo que llega en el idioma de origen.
Lo que esto cubre en la práctica
Traducido, porque ya está en la página: contenido de un constructor de páginas, una plantilla de tema, un shortcode, un framework renderizado en servidor o una consulta de CMS. No importa que lo haya generado un constructor o que el marcado sea inusual. Si está en el HTML, se traduce. Ver Constructores de páginas.
No traducido, porque llega más tarde: resultados de búsqueda obtenidos al escribir, listas de productos que se recargan al cambiar un filtro, contenido del carrito, comentarios cargados al desplazarse, cualquier cosa renderizada por un framework del lado del cliente en el navegador en lugar de en el servidor.
La prueba rápida. Ve el código fuente de la página, en lugar de usar el inspector. Lo que ves ahí es lo que Universally ve. El inspector muestra la página después de que los scripts se han ejecutado, razón por la cual el texto puede parecer presente y aun así no traducirse.
Trabajando con él hoy
Renderiza en el servidor lo que importa. El contenido que importa para el SEO o las primeras impresiones es mejor renderizarlo en el servidor de todos modos. La mayoría de los frameworks y constructores de páginas pueden hacerlo, y al hacerlo, entra en el ámbito aquí al mismo tiempo.
Envía tú mismo las cadenas. Para el texto de la interfaz que tu front-end posee, /v1/translate/strings traduce una lista de cadenas y las devuelve clasificadas por origen, lo que es adecuado para etiquetas, botones y estados que nunca tocan el servidor. Guarda en caché el resultado y reutilízalo. Ver Integrar usando la API.
Mantén las regiones dinámicas fuera del camino. Si un widget va a permanecer en el idioma de origen, exclúyelo para que no se traduzca a medias y sea confuso. Ver Incluir y excluir selectores CSS.
Lo que viene
La compatibilidad con el contenido dinámico se está expandiendo, por lo que más de lo que actualmente llega después de la carga se manejará sin ningún trabajo de tu parte. No hay una fecha para citar.
Hasta entonces, la API es la ruta admitida para cualquier cosa que tu propio código renderice, y sigue siendo la herramienta adecuada donde necesites control sobre exactamente cuándo se traduce una cadena.