cedricfontaine Posted January 6, 2012 Share Posted January 6, 2012 J'ai développé un module qui interroge Shipwire pour calculer le prix du transport. Shipwire met entre 4 et 7 secondes pour retourner un prix, ce qui complique la mise à jour du block cart en temps réel... Y aurait il un moyen d'éviter l'appel au calcul du prix via getOrderShippingCost du module lorsque nous ne sommes pas dans le panier ? Link to comment Share on other sites More sharing options...
Fabien Serny Posted January 16, 2012 Share Posted January 16, 2012 Bonjour Cédric, Es tu sur qu'un seul appel dure entre 4 et 7 secondes ? La méthode getOrderShippingCost peut être appelé presque 10 fois pour chaque page, et je pense que c'est le cumul de ses appels qui prends entre 4 et 7 secondes. Si c'est bien ça je te conseille de stocker le résultat dans une variable static au premier passage dans la méthode getOrderShippingCost et de renvoyer le cache lors des appels suivants (c'est ce que j'ai fait dans CanadaPost et cela fonctionne très bien Je t'invite à regarder le code source du module CanadaPost. Pour détecter si on est sur le panier, il n'y a pas de méthode toute faite, le mieux est de détecter quel script s'execute. Link to comment Share on other sites More sharing options...
cedricfontaine Posted January 16, 2012 Author Share Posted January 16, 2012 Oui c'est bien un seul appel qui prend 4 à 7 secondes. En attendant, j'ai bloqué l'appel à getOrderShippingCost dans blockcart. J'ai forcé le prix à zero pour le shipping. Cela solutionne le problème temporairement. 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