dav-One Posted August 6, 2012 Share Posted August 6, 2012 (edited) Bonjour, Je suis nouveau sur le forum. J'ai cherché si le sujet avait déjà été traité, et n'aie rencontré que des cas avoisinant et qui ne m'ont pas aidé. Je suis en train de faire un E-shop pour ma marque de vêtement. Et je suis bloqué sur un problème. Lorsque l'on rajoute un produit dans le panier et que l'on veut visualiser ce dernier, on a ensuite 2 boutons en bas "Continuer mes achats" et "suivant" Le bouton "continuer mes achats" me ramène toujours sur la page d'accueil du site et non sur la page précédente. Quand je regarde avec Firebug voici ce que je vois [url="/"]« Continuer mes achats[/url] Quand je survole le bouton je vois que le lien pointé est celui de l'accueil. Dans le fichier shopping-cart.tpl voici le code concerné : {if !$opc}[url="%7B$link-%3EgetPageLink%28%27order.php%27,%20true%29%7D?step=1%7Bif%20$back%7D&back=%7B$back%7D%7B/if%7D"]{l s='Next'} »[/url]{/if} [url="%7Bif%20%28isset%28$smarty.server.HTTP_REFERER%29%20&&%20strstr%28$smarty.server.HTTP_REFERER,%20$link-%3EgetPageLink%28%27order.php%27%29%29%29%20%7C%7C%20%21isset%28$smarty.server.HTTP_REFERER%29%7D%7B$link-%3EgetPageLink%28%27index.php%27%29%7D%7Belse%7D%7B$smarty.server.HTTP_REFERER%7Cescape:%27htmlall%27:%27UTF-8%27%7CsecureReferrer%7D%7B/if%7D"]« {l s='Continue shopping'}[/url] J'ai tenté de remplacer le index.php par product.php sans résultat. J'ai tenté de désactiver et de réactiver le bloc panier sans résultat. Je pense peux être à retélécharger le bloc panier et de le réinstaller. Scénario : -Aller sur le site http://www.e-shop.iigo-world.com/ -Aller dans la catégorie Tee shirt -Choissisez un Tee shirt et ajoutez le au panier -Visualisez le panier -Lorsque vous cliquez sur le bouton "continuer mes achats" vous êtes redirigé vers la page d'accueil Infos : - Je retrouve ce problème sur Firefox 14.0.1, Google Chrome 21.0.1180.57, IE6. -Version de Prestashop : 1.4.8.2 -Site Internet : http://www.e-shop.iigo-world.com/ Ca doit surement être un détail, mais je bloque. Merci d'avance. Edited August 9, 2012 by dav-One (see edit history) Link to comment Share on other sites More sharing options...
yvon38 Posted August 7, 2012 Share Posted August 7, 2012 Bonjour, Avez vous paramétré dans le BO>préférences>achats la fonction " Redirection après avoir ajouté un produit au panier :" ? Link to comment Share on other sites More sharing options...
dav-One Posted August 7, 2012 Author Share Posted August 7, 2012 Bonjour Yvon, Merci pour votre réponse. La fonction "Redirection après avoir ajouté un produit au panier" Concerne uniquement la version non-AJAX du panier. Dans mon cas le problème se situe lorsque je visualise le panier, et que je clique sur le "bouton continuer mes achats" qui me ramène sur la page d'accueil au lieu de la page précédente. Cordialement. Link to comment Share on other sites More sharing options...
Flo_180 Posted August 7, 2012 Share Posted August 7, 2012 Question bête, lorsque tu as remplacé la page index.php par product.php as tu désactivé le cache et forcé la compilation ? Sinon essai de faire un {$smarty.server.HTTP_REFERER|var_dump} pour voir se qui se trouve dans ta variable Link to comment Share on other sites More sharing options...
dav-One Posted August 7, 2012 Author Share Posted August 7, 2012 Bonjour Flo, Merci pour ta réponse. J'ai supprimé les fichiers dans le dossier tools/smarty/compile, ce qui revient à forcer la compilation je pense. Par contre Sinon essai de faire un {$smarty.server.HTTP_REFERER|var_dump} pour voir se qui se trouve dans ta variable Je ne sais pas faire ça. Sinon j'ai retélécharger le zip original prestashop et dans le fichier shopping-cart.tpl, c'est le même code avec le lien vers index.php notamment. Par exemple sur ce site fait avec Prestashop, lorque l'on refait le même scénario, le bouton continuer mes achats renvoie vers la page précédente. http://www.infronttech.com.au/ Il doit y avoir un détail qui m'échappe.. Par défaut, le bouton continuer mes achats renvoie vers la page précédente sans avoir à toucher d'option ? Link to comment Share on other sites More sharing options...
Flo_180 Posted August 8, 2012 Share Posted August 8, 2012 Hmm... Le http referer est activé sur ton serveur ? Sinon pour Sinon essai de faire un {$smarty.server.HTTP_REFERER|var_dump} pour voir se qui se trouve dans ta variable Il suffit de le placer dans ton tpl, juste en dessus du lien que tu nous a montré. Pour le cache et forcer la compilation : je te conseille de le faire dans ton administration dans préférence, sinon il va se recréer automatiquement. Link to comment Share on other sites More sharing options...
dav-One Posted August 8, 2012 Author Share Posted August 8, 2012 (edited) Manip faite pour le cache et forcer la compilation merci du conseil. J'ai placé dans mon tpl le code et voici ce que ca me fait. J'ai bien la variable qui m'annonce la page précédente string(58) "http://www.e-shop.iigo-world.com/product.php?id_product=12" Par contre en bas à gauche le lien indique la page d'accueil. Quand je regarde sur Firebug j'ai toujours ce code <a class="button_large" title="Continuer mes achats" href="/">« Continuer mes achats</a> J'ai l'impression que le problème vient du href="/" Sinon dans le Back Office j'ai changé la page d'accueil dans Préférence -> SEO URL-> page d'accueil . Et le bouton "continuer mes achats" pointait du coup vers la nouvelle page d'accueil. Ainsin que le logo dans le header. Pour le Le http referer est activé sur ton serveur ? Désolé mais je ne saurai te répondre, et je n'arrive pas à trouver la manip à effectuer en cherchant sur le net. Edited August 8, 2012 by dav-One (see edit history) Link to comment Share on other sites More sharing options...
Flo_180 Posted August 9, 2012 Share Posted August 9, 2012 Ok, dans shopping-cart.tpl remplace : <p class="cart_navigation"> {if !$opc}<a href="{$link->getPageLink('order.php', true)}?step=1{if $back}&back={$back}{/if}" class="exclusive" title="{l s='Next'}">{l s='Next'} »</a>{/if} <a href="{if (isset($smarty.server.HTTP_REFERER) && strstr($smarty.server.HTTP_REFERER, $link->getPageLink('order.php'))) || !isset($smarty.server.HTTP_REFERER)}{$link->getPageLink('index.php')}{else}{$smarty.server.HTTP_REFERER|escape:'htmlall':'UTF-8'|secureReferrer}{/if}" class="button_large" title="{l s='Continue shopping'}">« {l s='Continue shopping'}</a> </p> par <p class="cart_navigation"> {if !$opc}<a href="{$link->getPageLink('order.php', true)}?step=1{if $back}&back={$back}{/if}" class="exclusive" title="{l s='Next'}">{l s='Next'} »</a>{/if} <a href="{$smarty.server.HTTP_REFERER|escape:'htmlall':'UTF-8'|secureReferrer}" class="button_large" title="{l s='Continue shopping'}">« {l s='Continue shopping'}</a> </p> Si ça marche après ça, ça viens de la condition, sinon on véra.. Link to comment Share on other sites More sharing options...
dav-One Posted August 9, 2012 Author Share Posted August 9, 2012 Merci pour ta réponse Flo. J'ai modifié le .tpl et remplacé par le code. Comme tu vois le problème persiste. Sais tu si ce bouton ramène par défaut vers la page précédente ? Ou faut il remplacer le code dans le .tpl comme on le fait actuellement ? Link to comment Share on other sites More sharing options...
Flo_180 Posted August 9, 2012 Share Posted August 9, 2012 Essai de remplacer {$smarty.server.HTTP_REFERER|escape:'htmlall':'UTF-8'|secureReferrer} par {$smarty.server.HTTP_REFERER|escape:'htmlall':'UTF-8'} Link to comment Share on other sites More sharing options...
dav-One Posted August 9, 2012 Author Share Posted August 9, 2012 Ca marche !! Je te remercie infiniment, je n'aurai jamais trouvé. Quel a été ton raisonnement pour trouver la solution ? Le problème venait d'où ? Link to comment Share on other sites More sharing options...
Flo_180 Posted August 9, 2012 Share Posted August 9, 2012 (edited) Laisse la condition suivante quand même. <a href="{if (isset($smarty.server.HTTP_REFERER) && strstr($smarty.server.HTTP_REFERER, $link->getPageLink('order.php'))) || !isset($smarty.server.HTTP_REFERER)}{$link->getPageLink('index.php')}{else}{$smarty.server.HTTP_REFERER|escape:'htmlall':'UTF-8'|secureReferrer}{/if}" class="button_large" title="{l s='Continue shopping'}">« {l s='Continue shopping'}</a> Le problème c'est qu'on contourne un problème, dirait que ton serveur ne retourne ni $_SERVER['HTTP_X_FORWARDED_SERVER']; ni $_SERVER['SERVER_NAME']; Recherche du coté de ton hébergeur, tu dois avoir un problème, sinon ma boite heberge des prestashop si ça peux t'aider. Edit : je te conseille d'apprendre smarty, {$smarty.server.HTTP_REFERER|escape:'htmlall':'UTF-8'|secureReferrer} veux dire que tu attribues la fonction secureReferrer à ta variable, or il y a un problème car elle utilise la variable $_SERVER qui doit dire si ton lien est valide ou non et dans ton cas elle retourne que ton lien est non valide, donc problème dans tes variables $_SERVER ! Edited August 9, 2012 by Flo_180 (see edit history) Link to comment Share on other sites More sharing options...
dav-One Posted August 9, 2012 Author Share Posted August 9, 2012 Merci du conseil, je vais apprendre au fur et à mesure smarty. Sinon je pense avoir trouvé la solution sans avoir à réécrire le .tpl Dans Préférence -> SEO URL -> Nom de domaine : j'ai rempli => e-shop.iigo-world.com J'ai rechargé le .tpl d'origine sans l'avoir réécrit. Cela fonctionne maintenant. Merci énormément de m'avoir aidé. Link to comment Share on other sites More sharing options...
Flo_180 Posted August 9, 2012 Share Posted August 9, 2012 Je pensé que tu l'avais fait, c'est pour ça que je me suis pencher du coté de la variable $_SERVER A+ Link to comment Share on other sites More sharing options...
dav-One Posted August 9, 2012 Author Share Posted August 9, 2012 Je savais que c'était un petit détail. Merci encore pour ton aide. A+ Link to comment Share on other sites More sharing options...
Enduro Posted September 24, 2012 Share Posted September 24, 2012 (edited) Bonjour, J'ai exactement le même problème que dav-One. Le problème est réglé en retirant le www du nom de domaine dans la configuration des Urls comme l'a indiqué dav-One. Le retour a l'article fonctionne mais je ne veux pas mon site sans le www et il m'indique en haut un message d'avertissement dans le bo: que je suis connecté avec mon nom de domaine avec www et que celui-ci est différent que dans mes préférences (sans le www) Si vous pouvez m'aider à régler le problème en gardant une configuration avec www Merci. Edited September 24, 2012 by Enduro (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now