Comment Weglot gère les redirections
Dans cet article, vous apprendrez comment Weglot gère les redirections sur votre site web.
Note : Dans cet article, nous utiliserons le terme "redirection 301". 301 signifie qu'une redirection est permanente.
1. Redirections sans Weglot
Tout d'abord, nous allons voir comment fonctionnent les redirections sans utiliser Weglot.
Sur WordPress, si vous créez une page /about-us
. Décidez ensuite de modifier cette URL en /about
.
Maintenant, quand vous allez sur /about-us
vous avez une page d'erreur 404.
⇒ Par défaut, il n'y a pas de redirection 301 sur WordPress.
Cependant, vous pouvez utiliser les plugins "Yoast Premium" ou "Redirection" pour créer une redirection 301 à partir de /about-us
vers /about
.
Une fois que c'est fait, lorsque vous allez sur /about-us
vous serez redirigé vers /about
.
Voyons comment cela fonctionne lorsque vous utilisez un autre outil que WordPress (Shopify est utilisé ici pour l'exemple).
Lorsque vous modifiez une URL sur Shopify, vous pouvez choisir (à l'aide d'une case à cocher, voir la capture d'écran) si vous souhaitez créer une redirection :
Si vous cochez la case, allez à /about-us
vous serez redirigé vers /about
.
2. J'utilise le plugin WordPress de Weglot
Si vous avez une redirection : /a
⇒ /b
Ensuite /fr/b
affichera la page française, cependant, en allant sur /fr/a
vous serez redirigé vers /b
et PAS /fr/b
.
Pour que /fr/a soit redirigé vers /fr/b, vous pouvez essayer d'ajouter ce filtre (via le plugin Code Snippet) :
add_filter( 'wp_redirect', 'wp_redirect_weglot' , 0 , 2 ); function wp_redirect_weglot( $url, $status ) { if( function_exists('weglot_get_current_language')) { $cl = weglot_get_current_language(); $ol = weglot_get_original_language(); if($cl !== $ol && strpos($url, '/' . $cl . '/') === false) { $u = weglot_get_service('Request_Url_Service_Weglot')->create_url_object($url)->getForLanguage( weglot_get_service('Language_Service_Weglot')->get_language_from_internal($cl) ); return $u; } } return $url; }
3. J'utilise une autre intégration Weglot
Pour savoir si vous utilisez une intégration JavaScript ou une intégration de sous-domaine/sous-répertoire, vous pouvez aller sur votre Weglot dashboard > Allez sur votre projet > page "Setup" > Jetez un coup d'oeil à la bascule "Subdomains or Subdirectories".
Si elle est activée, cela signifie que vous utilisez une intégration en sous-domaine/sous-répertoire :
Si elle est désactivée, cela signifie que vous utilisez une intégration JavaScript.
a. J'ai une intégration JavaScript
Comme la traduction est effectuée côté navigateur sans URL spécifique, elle fonctionnera. Cela signifie que si vous allez sur /a
vous serez redirigé vers /b
et le contenu sera traduit lorsque vous serez sur /b
.
b. J'ai une intégration en sous-domaine/sous-répertoire
Les intégrations en sous-domaines et en sous-répertoires conservent les redirections, ce qui signifie que si vous avez une redirection : /a
⇒ /b
puis allez vers es.site.com/a
vous serez redirigé vers es.site.com/b
.
Il en va de même pour les sous-répertoires.
Si vous rencontrez des difficultés avec les redirections sur vos versions traduites, vous pouvez nous contacter directement à l'adresse support@weglot.com.