Jump to content

[RESOLU] Probleme bouton langues sur index.php et URL rewriting langues


Recommended Posts

Bonjour

Voilà mon petit problème ou disons mes deux petits problèmes

Problème 1

Lorsque je suis sur la page d'accueil de ma boutique, donc http://www.mondoamine.com/index.php et que je clique sur le bouton EN ( http://www.mondoamine.com/new-products.php?id_lang=1) rien ne se passe sauf pour si je suis dans les autres pages (new produtcs, best sales, bref toutes les autres page suaf l'accueil) et là à ce moment les menus et les menus passent effectivement en Anglais.

Problème 2

L'autre problème réside dans l'URL rewriting et me pose des soucis dans la traduction des pages....Si je clique sur un produit sans l'URL rewriting, tout se passe bien http://www.mondoamine.com/product.php?id_product=67 se transforme bien en http://www.mondomaine.com/67-horse-lounge-belt.html) Par contre, si je clique le drapeau FR, il ne prend pas la racin du site en compte et m'affiche http://67-ceinture-horse-lounge.html/ sans passer par www.mondomaine.com/..... J'ai donc dû désactiver l'URL rewriting en attendant masi c'est pas top pour mon référencement....


Est-ce normal ???

Mon fichier htaccess

# .htaccess automaticaly generated by PrestaShop e-commerce open-source solution
# http://www.prestashop.com - http://www.prestashop.com/forums
SetEnv PHP_VER 5
# URL rewriting module activation
RewriteEngine on

# URL rewriting rules
RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2$3.jpg [L,E]
RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/c/$1$2.jpg [L,E]
RewriteRule ^lang-([a-z]{2})/([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$3&isolang;=$1$5 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2&isolang;=$1$4 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$2&isolang;=$1 [QSA,L,E]
RewriteRule ^([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2$4 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$1$3 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$1 [QSA,L,E]
RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /cms.php?id_cms=$1 [QSA,L,E]
RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*)(.*)$ /supplier.php?id_supplier=$1$3 [QSA,L,E]
RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*)(.*)$ /manufacturer.php?id_manufacturer=$1$3 [QSA,L,E]
RewriteRule ^lang-([a-z]{2})/(.*)$ /$2?isolang=$1 [QSA,L,E]

# Catch 404 errors
ErrorDocument 404 /404.php
ErrorDocument 403 /403.php
ErrorDocument 401 /401.php



Un grand merci d'avance pour votre précieuse aide et vive Prestahsop quoiqu'il arrive, je suis Fan !!!

Ma configuration :
* Prestashop Version 1.1.0.5
* Hébergement Mediatemple Gris Server en PHP5

Link to comment
Share on other sites

Hello à tous

Après maintes recherches sur le forum et surtout via Google, j'ai trouvé la solution qui se trouve dans ce post-ci

http://www.prestashop.com/forums/viewthread/21301/installation_configuration_et_mise_a_jour/astucechangement_de_langue_sur_page_produit__url_avec_



[ASTUCE]Changement de langue sur page produit - url avec //

Correction d’un petit bug quand on veut changer de langue sur la page d’un produit, alors qu’on l’a atteint par les nouveautés et non pas sa catégorie (par exemple).
Sans cette modif l’url affichait un double slash dans l’url qui, forcément, ne marchait pas.

Dans classes/Links.php, remplacer la fonction getProductLink par :

public function getProductLink($id_product, $alias = NULL, $category = NULL, $ean13 = NULL)
   {
        if (!isset($this->allow)) $this->allow = 0;

       if (is_object($id_product) && $id_product->category == '')
           return ($this->allow == 1)?(_PS_USE_SSL_.__PS_BASE_URI__.intval($id_product->id).'-'.$id_product->link_rewrite.($id_product->ean13 ? '-'.$id_product->ean13 : '').'.html') : 
           (_PS_USE_SSL_.__PS_BASE_URI__.'product.php?id_product='.intval($id_product->id));

       elseif (is_object($id_product))
           return ($this->allow == 1)?(_PS_USE_SSL_.__PS_BASE_URI__.$id_product->category.'/'.intval($id_product->id).'-'.$id_product->link_rewrite.($id_product->ean13 ? '-'.$id_product->ean13 : '').'.html') : 
           (_PS_USE_SSL_.__PS_BASE_URI__.'product.php?id_product='.intval($id_product->id));

       elseif ($alias)
           return ($this->allow == 1)?(_PS_USE_SSL_.__PS_BASE_URI__.($category ? ($category.'/') : '').intval($id_product).'-'.$alias.($ean13 ? '-'.$ean13 : '').'.html') : 
           (_PS_USE_SSL_.__PS_BASE_URI__.'product.php?id_product='.intval($id_product));
       else
           return _PS_USE_SSL_.__PS_BASE_URI__.'product.php?id_product='.intval($id_product);
   } 






Alléluia, c'est résolu !!! :-)

Je n'y croyais plus !

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...