Jump to content

Erreur 404 authentification thème mobile Prestshop 1.5


Recommended Posts

Bonjour,

 

Je travaille avec un version 1.5.0.17 de Prestashop qui fonctionne sans soucis depuis presque 3 ans.

 

J'ai récemment souhaité activer le thème mobile (pour des raisons de SEO).

 

Je me rends compte que les client qui souhaitent confirmer leur commande sans être préalablement identifiés sont redirigés vers une page 404 au lieu de la page authentification (aucune erreur n'est à signaler si le client est déjà identifié avant confirmer sa commande).

 

J'ai analysé le code de shopping-cart.tpl et je trouve ligne 189 à 198 :
 

<ul data-role="listview" data-inset="true" id="list_myaccount">
<li data-theme="a" data-icon="back">
<a href="{$link->getPageLink('index', true)}" data-ajax="false">{l s='Continue shopping'}</a>
</li>
<li data-theme="b" data-icon="check">
<a href="{$link->getPageLink('authentication', true)}&back=order-opc" data-ajax="false">{l s='Confirm order'}</a>
</li>
{hook h="displayMobileShoppingCartButton"}
</ul>

{/if} 

 

Mon système est bien configuré en OPC donc le problème ne vient pas de là ... mais plutôt du renvoi vers la page d'authentification ... et je ne trouve vraiment pas le problème.

Merci d'avance pour votre aide !

 

Link to comment
Share on other sites

Salut Peterboum ,

 

J'ai le même probleme que toi, sauf que j'ai l'erreur 404 aussi une fois connecté.

 

En plus, sur la page produit, le prix affiché des produits ayant des déclinaisons, est le prix "de base" (soit 0€ en ce qui me concerne) bien que la déclinaison par défaut soit prise en compte (pas de souci sur le theme standard, pas de probleme dans les catégories du theme mobile...)

 

Peut être pourrions nous nous tenir informé de l'avancé de nos recherches?

 

Pour notre probleme de redirection 404, je vais me pencher sur les URLs.

 

A plus tard!

Link to comment
Share on other sites

Pas de problème Steakalive.

J'ai tenté de modifier le code juste pour être redirigé vers la page d'authentification ... et là, rien ne se passe lorsque je clique sur "confirmer ma commande" ... il semble que ce soit l'url vers l'authentification qui pose problème.

Je n'utilise pas les déclinaisons sur ma boutique donc difficile de dire si le problème est présent chez moi également.

Le premier qui a une information la partage ... si quelqu'un veut nous aider je suis preneur car là, je tourne en rond :(

 

Link to comment
Share on other sites

Salut PeterBoum,

 

Sur mon site www.exolar-distribution.fr, en version mobile, la cible du bouton "Confirmer la commande", lorqu'on n'est pas connecté est :


comme prévu, elle retourne l'erreur 404.

 

Sur la version standard, le meme bouton renvoie vers:


 

on comprend que "back" dans l'url, est la page de destination après la connexion

(les caractères %3A = ":", %2F = "/", %3F = "?", %3D = "=")

 

l'URL après "back" est donc :


 

Dans le fihier "shopping-cart".tpl,j'ai changé la ligne 194 :



<a href="{$link->getPageLink('authentication', true)}&back=order-opc" data-ajax="false">{l s='Confirm order'}</a>


par



<a href="{$link->getPageLink('authentication', true)}?back=http%3A%2F%2Fwww.exolar-distribution.fr%2Fcommande%3Fstep%3D1&multi-shipping=0" data-ajax="false">{l s='Confirm order'}</a>


(j'ai juste remplacé "order-opc" par la cible du bouton en theme standard - ATTENTION : &back= devient ?back=)

 

je teste et... 

je suis bien redirigé vers la page d'authentification, 

mais le "back" n'est pas pris en compte... lorsque je clique sur connexion (après avoir saisi mes identifiants), j'arrive à la page "mon Compte" (avec l'URL précédente oO "http://www.exolar-distribution.fr/authentification" qui reste affichée dans le navigateur), et non notre page "back"

 

Nous avons donc le chemin dans l'url, mais le bouton "connexion" semble ignorer ce parametre.

j'édite donc le fichier "authentication-choice.tpl" de mon theme mobile.

je vois que la ligne 10, s'occupe de notre "back", pour la partie "Create your account", mais pas dans la partie "Already registered"

Je copie/colle donc la ligne 10 à la ligne 28, avant le bouton connexion.

 

Ca marche pour moi!

A part lorsque je suis déjà connecté : un clic sur confirmer la commande me renvoie vers "mon Compte". :-(

...

 

et toi t'en est où?

Edited by steakalive (see edit history)
Link to comment
Share on other sites

Salut Mec ;) ,

 

J'ai remarqué que le comportement ne changait pas, que l'on soit connecté ou non...
un test sur le $isLogged confirme que celui ci reste à false.
 
j'ai alors remplacé
{if $isLogged AND !isGuest}
par
{if $cookie->isLogged()}
dans le fichier shopping-cart.tpl
 
et ensuite, à la place du lien vers "continuer mes achats", j'ai mis la meme chose qu'après le {else}, a part que j'ai changé le href du 2eme bouton:
 
<ul data-role="listview" data-inset="true" id="list_myaccount">
<li data-theme="a" data-icon="back">
<a href="{$link->getPageLink('index', true)}" data-ajax="false">{l s='Continue shopping'}</a>
</li>
<li data-theme="b" data-icon="check"> 
<a href="commande?step=1" data-ajax="false">{l s='Confirm order'}</a>
</li>
{hook h="displayMobileShoppingCartButton"}
</ul>
 
Mon fichier shopping-cart.tpl, a partir de la ligne 186 deviens donc :
 
{if $cookie->isLogged()} 


<ul data-role="listview" data-inset="true" id="list_myaccount">
<li data-theme="a" data-icon="back">
<a href="{$link->getPageLink('index', true)}" data-ajax="false">{l s='Continue shopping'}</a>
</li>
<li data-theme="b" data-icon="check"> 
<a href="commande?step=1" data-ajax="false">{l s='Confirm order'}</a>
</li>
{hook h="displayMobileShoppingCartButton"}
</ul>


{else} 
<ul data-role="listview" data-inset="true" id="list_myaccount">
<li data-theme="a" data-icon="back">
<a href="{$link->getPageLink('index', true)}" data-ajax="false">{l s='Continue shopping'}</a>
</li>
<li data-theme="b" data-icon="check">
<a href="{$link->getPageLink('authentication.php', true)}?back=http%3A%2F%2Fwww.exolar-distribution.fr%2Fcommande%3Fstep%3D1&multi-shipping=0" data-ajax="false">{l s='Confirm order'}</a>
</li>
{hook h="displayMobileShoppingCartButton"}
</ul>
{/if}
<br />
</div><!-- /content -->
<div id="displayMobileShoppingCartBottom">
{hook h="displayMobileShoppingCartBottom"}
</div>

That's work for me!!

Edited by steakalive (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

Je cherche mais ne trouve rien, j'ai tenté de suivre ta philosophie, rien ne change.

J'ai tenté de remplacer le répertoire thème mobile par ceux des versions ultérieures (jusqu'à 1.5.4), cela ne fonctionne pas non plus.

Je crois que je vais investir dans un thème responsive ... ce qui m'ennuie fortement car je vais devoir redévelopper toutes les modifications apportée à mon thème "desktop", merci Prestashop !

Merci pour ton aide ;)

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...