Multilingue, 1ndd

WRInaute discret
Bonjour à tous,

Voilà je vous explique mon problème.
Aujourdh'ui mon site possède
-1 nom de domaine .com non géolocalisé.
-2 langues (en fr)
-un rewritting des adresses (ultimate seo url)
-une détection de langue
-une langue de préférence l'anglais

Le problème c'est que du coup Google référence l'adresse http://www.boutique.com/my_product-p-1.html?language=fr,
ce qui a pour conséquence de pas détecter les mot cléf dans l'url, ce qui me pénalise

alors existe t il un moyen pour que gg référence l'adresse:
http://www.boutique.com/my_product-p-1.html en en
http://www.boutique.com/mon_produit-p-1.html en fr

sinon il existerais bien les solution:
1-
http://www.boutique.com/my_product-p-1.html en en
http://www.boutique.fr/mon_produit-p-1.html en fr
Mais le souci est que ma société n'est pas francaise donc impossiblité d'avoir un ndd fr (a moins que vous ayez un solution)

2-
http://www.boutique.com/en/my_product-p-1.html en en
http://www.boutique.com/fr/mon_produit-p-1.html en fr
ou
http://en.boutique.com/my_product-p-1.html en en
http://fr.boutique.com/mon_produit-p-1.html en fr
mais je ne sais pas comment faire mes rediction.

Alors à votre avis qu'est ce qui serais le mieux?
je suppose que la 2 permettrais de géolocaliser les sous domaine?

Merci à vous



Merci pour votre aide.
 
WRInaute discret
Bon faut vraiment que je m'y mette car là ca me pénalise vraiment trop...

si on tappe mon mon nom dans google.fr
il re-sort mon index anglais

si cherche n'importe lequel de mes prod il donne
www.ndd.com/product-p-1.html?language=fr

donc apparition du paramètre et des mot clé anglais dans l'url sur un requête FR.


Donc Sachant:
je possède le .fr et le .com
- jusqu'ici je n'ai exploité que .com
- que ca fais 18mois que je travail mon linking
- 90% de mon traffic et de mes conversion son FR

je pense que le plus judicieux à de mettre en place un sous-domaine ou dossier.
(si je met .com pour anglais et .fr pour le francais, mes clients vont arriver sur la version anglaise)
ma version .fr n'auras aucun liens...

Je pensais mettre en place un dossier car je pense plus simple, mais j'ai vu que les dossiers était plus difficile à référencer, qu'en est il?

du coup j'ai pensé:
- mettre une redirection de ?language=fr vers un dossier fr
Code:
RewriteRule ^fr/(.*)$ $1?language=fr[L,R=301]
RewriteRule ^en/(.*)$ $1?language=en[L,R=301]

-virer la détection de langue

modifier mon fichier classes rewritting pour que tout mes liens pointe vers
www.ndd.com/fr/....

modifier mon header pour que le bouton avec drapeau pointe vers:
www.ndd.com/AUTRE_LANG/ADRESSE_ACTUEL_REWRITER_DANS_LAUTRE_LANGUE

Enfin il me reste à déterminer ce que je fais si quelqu'un arrive sur
www.ndd.com sans paramètre de lang, je pense les rediriger vers fr/ de base
Comme aujourd'hui mon trafic et mes commande sont à 90% fr...

Bon voilà ma base de travaille si quelqu'un as de remarque ou autre je suis preneur, car là c'est un gros saut quand même donc faut pas se planter..
 
WRInaute accro
Je ne pense pas que les dossiers soient "beaucoup" plus difficiles à référencer, cependant, il est clair que la solution la plus souple c'est les sous-domaines sur le .com
 
WRInaute discret
pourquoi dis tu re les sous-domaine est plus souple que le dossier?

du coup comment fais tu pour le rewritting avec un sous domaine
car pour le dossier j'ai fais cela:
Code:
RewriteRule ^fr/(.*)$ $1?language=fr[L,R=301]
RewriteRule ^en/(.*)$ $1?language=en[L,R=301]
 
WRInaute discret
Alors voilà ce à quoi je suis arrivé:
dans .htaccess:
Code:
RewriteBase /
RewriteRule (catalog/)(.*)$ /$2 [L,R=301]

RewriteRule ^fr/(.*)$ $1?language=fr
RewriteRule ^en/(.*)$ $1?language=en
RewriteCond %{QUERY_STRING} ^options\=(.*)$

Puis dans le header.php
Code:
    $urldemande= 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
if ((basename($PHP_SELF) == FILENAME_DEFAULT)&&($HTTP_GET_VARS['cPath']=='')){
      $urltheorique = tep_href_link(FILENAME_DEFAULT, '', 'NONSSL');
} elseif (isset($HTTP_GET_VARS['cPath'])){
      $urltheorique = tep_href_link(FILENAME_DEFAULT, 'cPath='.$HTTP_GET_VARS['cPath'], 'NONSSL');
} 
[...]
    $contientfacebook=strrpos($urldemande,"facebook"); 
    if (($urldemande!=$urltheorique)&&($contientfacebook==''))
    {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: $urltheorique");
      echo '<link rel="canonical" href="'.$urltheorique.'" />';
          }
Comme celà ca control que l'adresse demandé est bien l'adresse théorique.
Donc si la page demandé est:
http://www.ndd.com/product-page-p-1.html?language=fr il redirge avec une 301 vers http://www.ndd.com/fr/page-produit-p-1.html

puis j'ai retravailler le système de rewritting en ajoutant le dossier pour que toute les liens pointe vers:
http://www.ndd.com/fr/ et que le changement de langue se fasse correctement.

Vous en pensez quoi?
est ce que ca semble correct?
Je voudrais pas perdre tout mes backlink, pageranks....
 
WRInaute discret
Excusez-moi, mais j'aurais vraiment besoin d'un avis.

Est ce que mes explications sont assez clair?
Merci néanmoins à tous.


P.S.:
Désolé encore d'insister, mais mon site est mon gagne pain, ca fais deux an que je travaille dessus je peut pas me permettre de tout planter.
 
Discussions similaires
Haut