joker Posted December 16, 2009 Share Posted December 16, 2009 Bonjour,Je ne suis pas encore un réél utilisateur de prestashop, j'aimerais en fait avoir une information avant de m'y lancer:je vais créer une "boutique en ligne" afin que les visiteurs puissent acheter des tshirts, une fois que le client choisi la taille, la couleur, la quantité, il dois traditionnellement cliquer sur "Ajouter Au Panier", cela génère un prix qu'il peut payer plus tard.Par exemple, si le client commande 15 tshirts noir, j'aimerais que quand il clic sur "Ajouter Au Panier", il puisse arriver sur une page intermédiaire avec le récapitulatif de la commande (15 lignes pour 15 tshirts par exemple, avant le prix final)Cette page devra lui permettre de déterminé si il veut un flocage sur chacun des tshirts, un symbole, ou autres..tout ceci aura une incidence sur le prix final dans le panier.Est-ce possible avec PrestaShop de base ? Est-ce que je devrais développer mon propre module pour faire ceci ? n'est-ce pas trop compliquer ?Vous comprendrez que ses questions sont essentielles pour moi à l'heure où je dois déterminé avec quel cms je construit mon site web.Je vous remercie par avance. Link to comment Share on other sites More sharing options...
joker Posted December 17, 2009 Author Share Posted December 17, 2009 un petit up :$ Link to comment Share on other sites More sharing options...
Yoya Posted December 17, 2009 Share Posted December 17, 2009 hello joker,il y'a une possiblité de base dans presta qui est de rajouter un text personnalisé, mais qui ne s'affichera pas directement sur ton produit dynamiquement sur la photo de ton produit comme j'imagine tu le souhaites.Cependant, avec un peu de boulot en modifiant prestashop, tu pourras arriver au but que tu souhaites. Dire que c'est simple ou pas dépendrat de tes compétences, que je ne s'aurai jauger à travers ta demande.Cdlt,Pierre. Link to comment Share on other sites More sharing options...
LekisS Posted December 17, 2009 Share Posted December 17, 2009 Hello joker,Tu m'as envoyé un mail à propos de ton soucis car j'en avais un similaire il y a quelques mois.Par contre, c'est pas tout à fait la même chose, car moi je cherchais à personnaliser directement les produits sur leur page en utilisant des menus déroulants, des "checkboxes", etc. Là tu cherche à avoir un récapitulatif des produits ajoutés au panier pour les personnalisés après.Ton soucis est plus compliqué que le mien étant donné qu'il faut que t'aies une page intermédiaire entre l'ajout au panier et l'affichage du panier.Je vois pas tout à fait comment faire, faudrait que je me penche là dessus, mais j'avoue que l'idée serait de modifier le code source de Prestashop pour forcer la redirection une fois les produits achetés.C'est la programmation pure selon moi qu'il faut réaliser et je n'ai pas regardé pour te donner la solution.Maintenant si tu souhaite pouvoir personnaliser le produit sur la page, je pourrai te dire comment faire Sinon, si j'ai mal compris, hésite pas à commenter Bon courage ! Link to comment Share on other sites More sharing options...
joker Posted December 17, 2009 Author Share Posted December 17, 2009 Hey LekisS !Merci beaucoup de t'être donner la peine de me lire et de me répondre, je me suis pencher sur ce problème ce soir et j'ai un tout petit peu avancer depuis.Dorénavant sur les produits de type tshirts, j'ai fais sauter le bouton "ajouter au panier" et je l'ai remplacé par "finaliser votre achat". Quand l'utilisateur clic, cela ouvre une fenêtre à l'intérieur de la même fenêtre (pour le moment j'ai joué avec le filter de css mais je le ferait certainement en jquery plus tard pour donner un meilleur effet) et je force l'utilisateur à me dire si il souhaite personnaliser son tshirt avant de l'ajouter dans son panier.Au passage, je précise qu'on reste sur la même page il n'y a aucun chargement, c'est juste une div style "fenêtre" qui vient par dessus.Donc dans cette nouvelle fenêtre intermédiaire je ré-affiche la photo du produit (pour info, au cas ou le client aurait alzheimer au moment du clic, xd), le prix (car il est susceptible de changer en fonction de la personnalisation du produit en locurence un tshirt), et 2 case input type text pour le moment pour connaitre le nom et le prénom qu'il souhaite inscrire par exemple.je limite le nombre de lettre à 15 et chaque lettre à un coût, est-ce que je peux récupéré le nombre de lettre saisie avec un simple strlen en php dans product.tpl ? selon le nombre de caractére récupéré je ferait un switch sur les différents prix correspondant au nombre de lettres.j'aimerais également en affecté le prix du produit... Savez-vous comment je peux faire ?j'ai remarquer ses 2 lignes:- {convertPrice price=$product->getPrice(false, $smarty.const.NULL, 2)}- {l s='tax excl.'}mais étant tout nouveau sur PrestaShop, je ne sais pas vraiment comment faire un truc du style:$prix total = $prix-de-larticle + $prix-du-nombre-de-lettre.Auriez-tu une idée ?? merci encoreps: je veux bien que tu m'aide à personnaliser ce produit sur cette fenetre de page Link to comment Share on other sites More sharing options...
LekisS Posted December 17, 2009 Share Posted December 17, 2009 Pour limiter le nombre de caractères je recommande surtout la balise HTML maxlength à placer dans le <input>, sinon, il est tout a fait possible de faire un strlen() en php pour récupérer le nombre de caractères.La plus grosse difficulté ici est le changement de prix en fonction de la personnalisation.Le prix dépend de quoi ? Du nombre de lettres ? Link to comment Share on other sites More sharing options...
joker Posted December 17, 2009 Author Share Posted December 17, 2009 merci pour la rapidité,Oui je vais faire un maxlength d'emblée, mais j'ai besoin d'un strlen() pour connaitre le nombre de caractére saisie (sans les espaces xd) car effectivement le prix dépend du nombre de lettres Link to comment Share on other sites More sharing options...
LekisS Posted December 17, 2009 Share Posted December 17, 2009 Le prix est fixe quelque soit le produit ? Ou il pourrait changer ?Ce que je demande là en fait, c'est savoir si il faut que le prix puisse être modifiable via l'interface d'admin, ou alors on s'en fout et il ne changera jamais ? Si il ne changera jamais, autant faire ça directement dans le code, sinon faut mieux faire quelque chose de propre... Link to comment Share on other sites More sharing options...
joker Posted December 17, 2009 Author Share Posted December 17, 2009 En fait le prix est fixe pour chaque produit, le problème c'est que je ne peux pas mettre un prix en dur dans product.tpl car il y à différent prix selon les matières des différents tshirts, il y a plusieurs modèles de tshirt etc.. puis j'avoue que je préfère faire quelque chose de propre si cela est possible sinon on perd l'avantage d'utiliser un cms ... qu'en pense-tu ?est-ce que je ne peux pas créer un champ en back office qui n'ai pas afficher de base sur la fiche produit, et que je pourrait appeler dans le code à l'aide de son id ? ou quelque chose dans le genre ?un hook ne pourrait pas correspondre à faire ce que je souhaite ?merchi Link to comment Share on other sites More sharing options...
joker Posted December 17, 2009 Author Share Posted December 17, 2009 c'est normal qu'un <?php print "allo"; ?> ne fonctionne pas dans product.tpl ? j'ai remarquer que la structure du php était un peux différente.. ce n'est plus les conditions d'un if qui sont entre les accolades mais le if tout entier. c'est normal ? Link to comment Share on other sites More sharing options...
LekisS Posted December 17, 2009 Share Posted December 17, 2009 Tout d'abord pour le <?php print "allo"; ?> oui, c'est normal car les fichiers ne sont pas des fichiers php, comme tu le remarque, ce sont des fichiers .tpl.Ils sont interprétés par le moteur de templates Smarty (tu peux chercher sur Google, t'as toute une doc dessus). En gros si tu veux afficher "allo", je crois qu'il faut faire {"allo"} ou un truc du style, je ne connais pas très bien Smarty. Mais il faut que tu regarde bien la doc de Smarty pour réussir à utiliser PHP à l'intérieur des templates.Ensuite, pour ton problème de personnalisation de produits.Dans Prestashop, tu as normalement la possibilité de créer des types de produits (je n'ai pas les termes exacts) ayant des prix différents. Le soucis, c'est que tu devrait faire (pour faire un truc propre) un de ces "types" de produits contenant les prix pour chaque lettre rajoutée.Ce qui te permettrait un meilleur contrôle en PHP, car si tu commences à forcer Prestashop à modifier les prix enregistrés, tu vas pas t'en sortir... Link to comment Share on other sites More sharing options...
joker Posted December 17, 2009 Author Share Posted December 17, 2009 ah okkkkkkkkkkkkkkkkk je vais voir du coté de smarty ^^merci bien, et dans le code, est-ce que tu aurait une idée de comment additionné le prix avec une autre variable ou le faire monter en fonction du nb de lettre ? Link to comment Share on other sites More sharing options...
LekisS Posted December 17, 2009 Share Posted December 17, 2009 Bah comme je te disais tu devrai avoir un prix "préparé" (dans le back-office) pour chaque nombre de lettres.Ensuite Prestashop fera le reste Link to comment Share on other sites More sharing options...
joker Posted December 17, 2009 Author Share Posted December 17, 2009 tu ne parle pas des attributs et des déclinaisons j'imagine ?tout cela me parait un peux compliqué car je ne voit pas dans quel sens aller, j'était parti pour faire un formulaire dans product.tpl..Je vais continué à chercher pour trouver une solution et je ferais autrement si cela me prend trop de temps car cela m'as l'air un peu corsé au vu de mon niveau.quoi qu'il en soit je te remercie pour ta gentilesse Link to comment Share on other sites More sharing options...
LekisS Posted December 17, 2009 Share Posted December 17, 2009 Si, je parlais des déclinaisons et attributs... Je pense que tu pourrai jouer avec ça pour le nombre de caractères.Modifier le formulaire dans product.tpl serait faisable (c'est ce que j'ai fait), mais pouvoir faire en sorte que Prestashop enregistre un prix en fonction du nombre de lettres, ça c'est compliqué je pensais que tu pouvais essayer de jouer avec les attributs / déclinaisons pour pouvoir enregistrer les prix différents... Après l'affichage c'est très facile et je pourrai t'expliquer (mais là je vais me coucher, demain boulot ^^) Link to comment Share on other sites More sharing options...
joker Posted December 18, 2009 Author Share Posted December 18, 2009 ok pas de prob, t'en as déjà assez fait pour moi ce soir lol !!en fait si j'ai bien compris je peux enregistrer des attributs et des déclinaisons avec des prix en fonction: pour: 1 lettre 5€, 2 lettre 10€, 3 lettre 15€, etc..mais est-ce que je peux contrôler l'affichage de cet attributs/déclinaison par du code? en l'appelant grâce au code?il faut aussi que je transmettre le texte qu'e le client a saisi et qu'il souhaite marquer sur son tshirt quelque part..ça pose problème si le mec choisi "1 lettre 5€" dans le input type select (attribut/déclinaison), et que dans la case input type text il écrive 10 lettres genre "abcdefghij" ou "jetecarote" xd (pour 5€ au lieu de 50€).j'ai mieux cerné ma difficulté à présent. cela doit être faisable en maitrisant smarty+prestashop cependant j'ai découvert les deux aujourd'hui ^^. Link to comment Share on other sites More sharing options...
LekisS Posted December 18, 2009 Share Posted December 18, 2009 Ouais l'idée c'est exactement ça Après, tu peux tout à fait contrôler l'affichage... Garde en tête que ça sera toujours plus facile de customiser l'affichage que le reste Garde pas la génération d'attributs/déclinaisons de Prestashop à l'affichage de ton produit, personnalise le Tu mets juste un champ texte, et tu fais le contrôle en Javascript par exemple 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