Les caractères en dehors de l'ensemble ISO Latin-1 ne sont pas autorisés dans les URL selon this spec, donc les chaînes chinoises seraient immédiatement désactivées.
Lorsque le nom du produit peut être localisé, vous pouvez utiliser urls comme <DOMAIN>/<LANGUAGE>/DIR/<PRODUCT_TRANSLATED>
, par exemple:
http://www.example.com/en/products/cat/
http://www.example.com/fr/products/chat/
accompagné d'une règle mod_rewrite à l'effet de:
RewriteRule ^([a-z]+)/product/([a-z]+)? product_lookup.php?lang=$1&product=$2
Pour le premier exemple ci-dessus , cette règle appellera product_lookup.php?lang=en&product=cat
. Dans ce script, vous pouvez accéder au moteur de traduction interne (à partir du paramètre lang
, en
dans ce cas) pour faire la même traduction que vous faites du côté de l'utilisateur pour traduire, par exemple, "Chat" sur la page en français L'utilisation d'une API de traduction externe serait une bonne idée, mais difficile à obtenir un fiable qui fonctionne correctement dans votre domaine d'activité. Google a ouvert un translation API, mais il ne prend actuellement en charge qu'un nombre limité de langues.
- Anglais < => Arabe
- Anglais < => Chinois
- anglais < => Russe
C'est une très bonne idée et intereseting. Cela indique mon problème. 1. l'url est illégale alors, n'est-ce pas? permet de dire:/product/122/prodöktä/ 2. est-ce que google reconnaît ces URL alors? – Michal
Cela semble tout à fait possible - http://dmoz.org.il/ - bien que vous fassiez mieux de les encoder en UTF8 et de voir s'ils sont décodés dans le navigateur. Google et al feraient aussi probablement mieux avec eux. –
Je pense que c'est comme ça que je vais le faire. Je vais supprimer tous les caractères spéciaux comme par ex./$ "', etc du titre et bung le titre directement dans le lien.Mais en demandant la chaîne de requête je vais ignorer le titre et utiliser seulement l'ID – Michal