Page d'annulation de commande

  • Posts: 476
  • Thank you received: 31
  • Hikashop Business
12 years 1 week ago #76044

J'ai ajouté une page d'annulation et une page de confirmation de commande à mon plugin PayPal.

La page d'annulation est la suivante, en SEF : annulation-paiement-paypal/

Après une annulation PayPal, la page qui s'affiche est celle-là : mon-panier/order/cancel_order/order_id-8/annulation-paiement-paypal/

Au vu de cet "order_id-8", je suppose qu'elle peut encore être différente…

Ce qui me génère une page d'erreur.

Comment faire ?

++++++++++
J'ai testé la page de retour en cas de paiement PayPal effectué, la page de confirmation, et celle-ci fonctionne bien.

Last edit: 11 years 11 months ago by lesyeux.

Please Log in or Create an account to join the conversation.

  • Posts: 13201
  • Thank you received: 2322
12 years 1 week ago #76183

Bonjour,

Pouvez-vous ré-essayer en activant le fil d'ariane simplifié dans l'onglet "Principal" de la configuration HikaShop ?

Merci de nous afficher le screenshot de la page d'erreur après avoir affiché le debug mode de Joomla.

Please Log in or Create an account to join the conversation.

  • Posts: 476
  • Thank you received: 31
  • Hikashop Business
12 years 1 week ago #76214

J'ai activé le fil d'ariane simplifié. Au niveau des URL créées, c'est bien mieux. Mais l'erreur sur cette page est encore là.

Je vais cloner le site pour pouvoir refaire des tests à part.

Et quant au "screenshot" pas sûr d'avoir bien compris. J'ai un PDF de la page entière avec tout le détail du debug : ça prend 10 pages. Je vous passe le lien.

Please Log in or Create an account to join the conversation.

  • Posts: 13201
  • Thank you received: 2322
12 years 1 week ago #76329

Je viens d'essayer l'URL et il semble que vous avez résolu votre problème, la page de paiement annulé s'affiche correctement.

Please Log in or Create an account to join the conversation.

  • Posts: 476
  • Thank you received: 31
  • Hikashop Business
12 years 1 week ago #76338

Xavier wrote: Je viens d'essayer l'URL et il semble que vous avez résolu votre problème, la page de paiement annulé s'affiche correctement.


J'ai seulement bidouillé en établissant (avec sh404SEF) des redirections du type :
mon-panier/order/cancel_order/order_id-20/annulation-paiement-paypal/
mon-panier/order/cancel_order/order_id-21/annulation-paiement-paypal/
mon-panier/order/cancel_order/order_id-22/annulation-paiement-paypal/
etc.

Je suis en train de faire des tests sur un clone du site. Pour l'instant j'ai toujours le problème mais je cherche !

Please Log in or Create an account to join the conversation.

  • Posts: 476
  • Thank you received: 31
  • Hikashop Business
12 years 1 week ago #76343

Je crois bien que c'est le SEF qui me joue des tours.

Il me rajoute "mon-panier/order/cancel_order/order_id-20/" devant l'URL SEF normale de la page d'annulation (cancel_url) : annulation-paiement-paypal/

Je ne vois pas d'où vient le problème, surtout que c'est ok avec l'autre page de retour, celle de confirmation du paiement (return_url).

Connaissez-vous un moyen d'empêcher une url d'une page précise d'être réécrite ?

index.php?option=com_content&Itemid=218&catid=36&id=14&lang=fr&view=article

Avec sh404SEF, il faudrait créer toutes les URL SEF, supprimer l'URL SEF de cette page cancel_url puis configurer sh404SEF pour ne plus effectuer de redirection 301 de non-SEF vers SEF, mais cela voudrait dire que si une URL SEF n'existe pas (produit venant d'être ajouté), elle ne sera pas créée, et donc que certaines règles basées sur SEF (en particulier l'affichage des modules) ne fonctionneront pas pour les pages en questions. Pas très confortable.

Please Log in or Create an account to join the conversation.

  • Posts: 476
  • Thank you received: 31
  • Hikashop Business
12 years 1 week ago #76361

Après annulation, en l'absence de SEF, en l'absence de page de redirection spécifiée, la page qui s'affiche est celle qui correspond au menu 304 qui permet au client d'aller au checkout depuis un module de menu "Mon compte".

index.php?option=com_hikashop&ctrl=product&task=listing&Itemid=304

Mais avant d'afficher cette URL, je vois se succéder peut-être 2 URL intermédiaires. J'ai réussi à en attraper une : index.php?option=com_hikashop&ctrl=checkout&step=0&Itemid=304

Et c'est là que le SEF doit me créer mon-panier/order/cancel_order/. Quant au order_id-20 ou autre numéro (correspondant au numéro de la commande créée)… ?

Sauf qu'il devrait ensuite basculer sur annulation-paiement-paypal/ au lieu de concatener les 2 URL (les 3 avec ce order_id-20/)

Si je pouvais supprimer ce fragment "order_id-20/" je pourrais au moins rediriger de manière permanente vers "mon-panier/order/cancel_order/annulation-paiement-paypal/"

Please Log in or Create an account to join the conversation.

  • Posts: 13201
  • Thank you received: 2322
12 years 1 week ago #76458

Si le souci viens du fragment "order_id-20", essayez d'éditer le plugin PayPal.
Dans votre arborescence de fichier, éditez le fichier "plugins/hikashoppayment/paypal/paypal.php", dans la fonction onAfterOrderConfirm() modifiez la ligne:

$return_url = HIKASHOP_LIVE.'index.php?option=com_hikashop&ctrl=checkout&task=after_end&order_id='.$order->order_id.$url_itemid;
en:
$return_url = HIKASHOP_LIVE.'index.php?option=com_hikashop&ctrl=checkout&task=after_end'.$url_itemid;

The following user(s) said Thank You: lesyeux

Please Log in or Create an account to join the conversation.

  • Posts: 476
  • Thank you received: 31
  • Hikashop Business
12 years 1 week ago #76559

Cela corrige le problème car je peux maintenant établir une redirection générique, puisqu'il n'y a plus de fragment variable "order_id-xx" dans l'URL. Merci pour l'astuce.

Question subsidiaire : pour les plugins system, on peux faire des overrides. Mais pour ce plugin PayPal ?

Please Log in or Create an account to join the conversation.

  • Posts: 13201
  • Thank you received: 2322
12 years 1 week ago #76664

Non on ne peux pas faire d'override pour les plugin.
Par contre vous pouvez dupliquer ce plugin, comme cela lors des mise à jours le plugin standard sera modifié mais pas celui copié.

Please Log in or Create an account to join the conversation.

Time to create page: 0.086 seconds
Powered by Kunena Forum