Jump to content

[presta 1.5.4] Page intermédiaire au panier, questions.


Recommended Posts

Bonjour,

 

Après avoir créé une étape entre l'ajout au panier et le panier lui-même, je cherche à faire la chose suivante :

 

- j'arrive sur une page dans laquelle je choisis pleins d'options qui ont un impact sur le prix (mais pas gérable avec les déclinaisons apparemment)

 

-une fois ces options validées je suis redirigé vers la première page du panier avec le résumé des options en-dessous du produit (ex.: option assurance: +15€)

 

- les options ne sont pas dynamiques (une option ne se supprime pas mais on peut la modifier en revenant sur la page précédent le panier)

 

Mes questions sont les suivantes :

 

1* Comment géreriez-vous ça ? (si quelqu'un a déjà fait ça...)

 

2* Est-il possible d'impacter directement le prix en base de données pour le paiement? Avec quelle variable pour que ce soit pris en compte (parce qu'il y a un suivi après et que j'aimerais être sûr que le module de paiement le prenne en compte) ?

 

3* Pour les options, est-ce que vous me conseillez plutôt d'avoir une table à part avec les options ou d'ajouter des champs aux tables ps_cart_product et ps_order_detail ainsi qu'un champ augmenation_prix pour l'ajouter au moment du paiement et que les options soient prises en compte ?

 

4* Est-ce qu'il y a quelque part une documentation du code POO de prestashop ? (par exemple quand je veux récupérer ce qu'il se passe entre la page produit et la page panier j'ai un bug puisque je perd toutes les options et je ne comprends pas bien le principe du cache, comment l'utiliser et quelles informations retenir entre la page produit et la page panier par exemple)

 

Merci,

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,

 

Je vais tenter une demande plus simple et précise :

 

- J'ai créé une page intermédiaire entre l'ajout au panier et le panier (donc le produit n'est pas tout de suite ajouté au panier, j'arrive d'abord sur une page personnalisé en cliquant sur "ajouter au panier").

En revanche, je ne retrouve pas certaines valeurs (prix, etc...)

Pourtant je pensais que les variables smarty globales (genre $priceDisplay) étaient récupérable quelle que soit la page :/

Est-ce qu'il y a une manip à faire pour retrouver l'état de mon produit tel qu'il a été sélectionné ?

Est-ce qu'il faut que dans la page php de mon controller j'inclus le même code que la page productController.php ?

 

Merci d'avance :)

Link to comment
Share on other sites

Bonjour,

 

vu la complexité un petit billet a un développeur pourrait vous aider car votre souci ne semble pas simple, affichez également vos codes, sans cela dur de voir le problème.

 

je ne peux malheureusement vous aider je n'ai pas les compétences.

 

bon courage

Link to comment
Share on other sites

Je suis justement développeur :)

Mais j'avoue que j'ai du mal à comprendre le modèle étant novice prestashop et une petite doc technique ne serait pas de trop, au moins pour expliquer comment récupérer les valeurs d'un modèle :P

Link to comment
Share on other sites

  • 2 weeks later...

Vous avez trouvé votre solution? Ou sinon complétement d'accord avec la doc technique................ Je ne pense pas qu'il y en ai une, faut un peu fouiller partout pour trouver ce qu'on cherche en général.

Link to comment
Share on other sites

Bonjour,

Le plus simple pour comprendre comment cela fonctionne c'est de regarder ce qui existe déja. Donc il suffit de regarder dans les thèmes ou dans les modules qui existent déja.

priceDisplay indique simplement si le prix doit être affiché ou pas avec ou sans taxe. Pour récuperer les infos du panier, il existe $cart. Ensuite si tu as des variables spécifiques il te faut les assigner à smarty. Regardes dans le module blockcart pour voir comment faire.

Link to comment
Share on other sites

  • 2 weeks later...

Vous avez trouvé votre solution? Ou sinon complétement d'accord avec la doc technique................ Je ne pense pas qu'il y en ai une, faut un peu fouiller partout pour trouver ce qu'on cherche en général.

 

Bonjour,

 

Oui j'ai trouvé la solution finalement.

Le prix est définit par une variable dans la classe Cart.php et je peux faire tous mes traitements avant et après ajout au panier donc j'ai la solution pour la page intermédiaire puisque l'ajout au panier se fait lors de la redirection vers le contrôleur panier donc il suffit d'intervenir avant :)

Les classes prestashop Db et Tools sont super utiles !

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