Notes de version Easyling mai 2024

Alors que nous entrons dans le mois de juin, nous sommes ravis de partager les dernières mises à jour et améliorations que nous avons apportées en mai. Notre équipe a travaillé d’arrache-pied pour améliorer votre expérience, et nous sommes ravis de présenter une fonctionnalité phare ce mois-ci : un écran de connexion entièrement repensé. J’expérimente également l’IA. Pouvez-vous deviner quelles parties de ce document sont originales ? Lisez tout ce qui se trouve sous la ligne de flottaison.

Nouvel écran de connexion

Personne n’aime vraiment se connecter. C’est tellement pénible de devoir appuyer sur le bouton du gestionnaire de mots de passe. Ou pire encore, si vous devez vous souvenir de votre mot de passe. Cependant, pour l’instant, le Dashboard doit être sécurisé d’une manière ou d’une autre. Le mieux que nous puissions faire est de rendre le verrou aussi joli que possible. À cette fin, nous avons repensé notre écran de connexion. Cette nouvelle couche de peinture s’inscrit dans nos efforts pour que nos systèmes aient l’air frais et élégants.

Capture d’écran de l’écran de connexion mis à jour

Les fonctionnalités sont inchangées. Vous pouvez toujours vous connecter avec votre nom d’utilisateur et votre mot de passe ou utiliser vos comptes Google ou XTM de confiance pour l’authentification.

Le nouveau design intègre des standards modernes d’utilisabilité, tout en conservant le thème bleu habituel du Dashboard. Je trouve qu’il est beaucoup plus agréable visuellement que l’ancien. Qu’en pensez-vous ? Écrivez-nous à support@easyling.com et dites-nous ce que vous en pensez.

API pour lancer la traduction dans Crest

Par défaut, le moteur de traduction Crest commencera à traduire le contenu dès qu’il sera chargé. Dans la plupart des cas, cela signifie dans les premières millisecondes et cela fonctionne très bien pour la grande majorité des sites web.

Cependant, certains sites web utilisent une technologie appelée rendu côté serveur pour accélérer le chargement initial des sites qui reposent fortement sur JavaScript. En bref, le code JavaScript est exécuté sur le serveur avant que le résultat ne soit envoyé à l’utilisateur. En supposant que le serveur puisse exécuter JavaScript plus rapidement que mon téléphone ou mon ordinateur portable, cela se traduira par un chargement des pages plus rapide. Cependant, le JavaScript côté client reste nécessaire pour l’interactivité. Cela est ajouté via un processus appelé hydratation. Ce processus remplace des éléments par des éléments identiques en apparence, mais interactifs. Cela est généralement invisible pour les utilisateurs, car il est peu probable qu’ils interagissent avec ces éléments pendant les quelques millisecondes que prend ce processus.

Le problème avec un tel système, c’est que lorsque notre script de traduction est ajouté, il y a désormais deux scripts qui tentent de modifier le site web dans les toutes premières millisecondes de son chargement. Cela produit des résultats plutôt amusants. Supposons que l’ensemble de la navigation d’un site soit interactif, parce qu’il comporte des sous-menus. Naturellement, elle sera d’abord chargée sans interaction, puis l’hydratation ajoutera l’interactivité. En même temps, notre script ajoutera des traductions. Les deux systèmes se remplacent alors mutuellement élément par élément. Selon le système qui a réussi à s’exécuter un peu plus vite, vous aurez une navigation partiellement traduite et partiellement interactive sur votre site. Et à chaque rechargement de la page, elle sera partiellement traduite/interactif d’une manière légèrement différente.

La solution pour ce scénario consiste à attendre que le script de traduction attende la fin du processus d’hydratation. Après tout, cela ne prend que quelques millisecondes. Mais comment sait-il quand le processus d’hydratation est terminé ? Malheureusement, il ne le peut pas. Donc, pour garantir l’expérience de traduction souhaitée sans avoir à deviner, il doit en être informé. Tout d’abord, activez le réglage Start manually sous JavaScript publishing dans le Dashboard.

Capture d’écran du réglage manuel de départ

Ensuite, vous devez modifier votre site web. Trouvez le code responsable de la gestion du processus d’hydratation. Ensuite, ajoutez une ligne de JavaScript à la fin :

window.crestTranslator.start();

Il s’agit d’un appel à notre API, indiquant au script de traduction qu’il doit commencer à traduire.

Empêcher les appels récursifs de proxy

Supposons que nous traduisions www.example.com en ukrainien via Translation proxy et que nous configurions la publication dans un sous-répertoire comme indiqué dans la documentation. Les traductions sont désormais disponibles sur www.example.com/ua/. Lorsque vous chargez cette page, la requête arrive chez Easyling. Easyling enverra ensuite une requête à www.example.com pour obtenir le contenu en anglais afin de pouvoir le traduire. C’est le mode de fonctionnement normal.

Considérons maintenant que quelqu’un visite www.example.com/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/. Easyling supprimerait consciencieusement un ensemble de /ua/ et enverrait une requête à www.example.com/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/ua/, traduirait les résultats et vous les facturerait. Mais qu’est-il arrivé à cette requête envoyée par Easyling ? Vous l’avez deviné, elle est arrivée chez Easyling. Il supprimerait consciencieusement un des /ua/ et le cycle se répéterait jusqu’à ce qu’il ne reste plus de /ua/. Ce n’est qu’alors qu’il enverrait la requête pour le contenu anglais réel. Easyling est conçu pour s’adapter selon les besoins à un débit extrêmement élevé, de sorte que toutes ces requêtes seraient traitées et facturées. Naturellement, ce n’est pas un comportement souhaité, donc Easyling peut désormais détecter cela et renvoyer 410 (Gone) en réponse. Ceci est activé par défaut pour tous les projets.

Corrections

Bien entendu, nous avons aussi quelques améliorations mineures à mentionner :

  • Une erreur a été corrigée, qui se produisait lorsque la fonctionnalité « Recrawl with same settings » était utilisée sur une exploration planifiée créant des instantanés.
  • Nous avons introduit et corrigé un bug qui vous empêchait de créer des projets.
  • Enfin, nous avons corrigé un bug où des nombres incorrects étaient affichés dans la boîte de dialogue d’entrée de suppression en masse dans le Workbench.

Avertissement : La première moitié de l’introduction a été suggérée par ChatGPT. Le reste du document a été rédigé par une intelligence humaine, ce qui constitue mon excuse pour les fautes de frappe.

Prêt à mettre en place l’infrastructure de localisation de votre site web ?

Réservez une consultation gratuite avec les experts solutions d’Easyling. Nous passerons en revue votre site web, votre configuration actuelle, le volume de contenu et vos objectifs. Pas de démo générique. Pas de présentation commerciale. Une vraie conversation à propos de votre projet. Avec un aperçu de traduction en direct de votre propre site.

Réservez une consultation gratuite