Jump to content
Sign in to follow this  
pouet

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

Recommended Posts

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);
   }

Share this post


Link to post
Share on other sites

Ce bug est corrigé sur la dernière version en ligne (1.2 beta 2) ?

Share this post


Link to post
Share on other sites

moi je suis sur la 1.1, je ne peux pas te dire..

Share this post


Link to post
Share on other sites

Je n'ai pas ce bug sur une install de 1.1.

Je vais sur un produit en cliquant sur un lien dans le bloc Nouveaux produits.
Je change de langue => OK.

Tu as activé l'URL simplifiée ?

Share this post


Link to post
Share on other sites

oui. url simplifiée chez OVH.

En tout cas j'avais ce bug, et je ne l'ai plus ;)

Share this post


Link to post
Share on other sites

Je confirme, j'ai aussi (enfin, je devrais plutot dire, grace à toi "j'avais" :)) ce probleme, mais pas necessairement parce que j'accedais à une fiche produit par les nouveaux.
Quel que soit le moyen, le nom du domaine sautait, et j'avais effectivement un http://id-nom du produit.html

Donc maintenant, ca marche :)
Pour info, je suis en Version 1.1.0.5

Share this post


Link to post
Share on other sites

ahhhhh, je confirme aussi, chez moi ça a corrigé le problème de lien sans nom de domaine quand on était sur la page "envoyer à un ami" et qu'on voulait revenir sur le produit en utilisant le lien ou l'image...

Pour la 1.2 je sais pas encore si ce bug existe, je dois activer les liens additionnels.

Share this post


Link to post
Share on other sites
Pour la 1.2 je sais pas encore si ce bug existe, je dois activer les liens additionnels.


Oui, ce serait gentil de vérifier, parce que moi j'ai pas réussi à reproduire ce bug. Merci.

Share this post


Link to post
Share on other sites
Pour la 1.2 je sais pas encore si ce bug existe, je dois activer les liens additionnels.


Oui, ce serait gentil de vérifier, parce que moi j'ai pas réussi à reproduire ce bug. Merci.


Je viens de tester à l'instant.

Je click sur un produit présenté dans le block "nouveautés", et quand je suis dans le produit le change de langue.
Aucun bug concernant un double slash, la page est rafraichie sur le produit sans problème.

la seule chose que je remarque c'est que l'url simplifiée est perdue. C'est à dire que, avant, l'url est comme ça : "http://www.domaine.com/musique-ipods/2-ipod-shuffle.html" et après le changement de langue elle est comme ça : "http://www.domaine.com/product.php?id_product=2&id_lang=1"

Si je re-click sur la langue précédente je ne reviens toujours pas sur une url simplifiée, je vois juste le numéro de langue qui a changé "lang=2"

Je ne sais pas si c'est normal ça ?

Share this post


Link to post
Share on other sites

Bonjour,

Merci pour cette astuce, je suis egalment chez OVH et j'avais ce bug, il est maintenant résolu!

Merci

Stéphane

Share this post


Link to post
Share on other sites

Cela en aura au moins dépanné quelques uns :)

Share this post


Link to post
Share on other sites

Bonjour,

Cette astuce m'a bien dépanné, ce problème me prenait la tête ;-) Merci !

Je suis sur PhpNet avec la version 1.1.0.5. Par contre sur Icodia le problème persiste (mais je change d'hébergement).

Share this post


Link to post
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
Sign in to follow this  

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More