PrestaShop Forum

The best place in the world to ask questions about PrestaShop and get advice from our passionate community!

PrestaShop Forum

Jump to content

Selection d'un attribut avant ajout au panier...

32 replies to this topic
#1
space

    PrestaShop Apprentice

  • Members
  • PipPip
  • 113 posts
Bonjour,

J'écris ici car il me semblais avoir lu que depuis la v1.2 beta, il était possible de sélectionner le ou les attributs d'un produit un cliquant sur le bouton ajouter au panier... mais j'ai testé et j'ai pas trouvé !

Je m'explique:
Sur la fiche produit, j'ai un attribut à sélectionner (la taille du produit) avant que le client ne clique sur "ajouter au panier" (cf 1ere image).
Quand je suis dans la liste des produits de la catégorie ou de la sous catégorie, ou même dans les produits phares, le client n'a pas la possibilité de sélectionner la taille du produit avant de l'ajouter au panier (cf 2ème image)... et c'est l'attribut par défaut qui est ajouté...

C'est très bloquant car ça va me générer beaucoup d'erreur de commandes (et donc des retours, des avoirs, et un mécontentement des clients...) au lancement de ma boutique.

Cette fonctionnalité a-t-elle été implémentée? Si oui comment fait-on pour la mettre en place, et si non un développement est-il prévu pour pallier à cet inconvénient (majeur dans mon cas) ?

Cordialement,

Sam_

Attached Files



#2
Alekhine

    PrestaShop Addict

  • Members
  • PipPipPip
  • 711 posts
Je ne connais pas la beta, j'ai la 1.1.0.5, mais j'ai pensé comme vous, donc j'ai modifié le code pour que le bouton "ajouter au panier" ne soit pas visible quand il y a au moins un attribut. Ca oblige le client à cliquer sur "voir le produit".

Quand il n'y a pas d'attribut le bouton "ajouter au panier" est présent, il peut cliquer directement sans incidence.


Stop creating test accounts on my shop, thank you!!!

#3
jolvil

    PrestaShop Fanatic

  • Members
  • PipPipPipPip
  • 2706 posts
Je serai interéssé par le code pour ne pas afficher le bouton :cheese:

#4
Alekhine

    PrestaShop Addict

  • Members
  • PipPipPip
  • 711 posts

From 1246207714:

Je serai interéssé par le code pour ne pas afficher le bouton :cheese:


Mon thème est assez différent de celui d'origine, mais je viens de regarder et en fait il n'y a qu'un test à ajouter.

Fichier product-list.tpl de votre thème :

PAR DEFAUT:

{if ($product.allow_oosp OR $product.quantity > 0) && $product.customizable != 2}
{l s='Add to cart'}
{else}
{l s='Add to cart'}
{/if}
{l s='View'}








MODIF:

{if ($product.allow_oosp OR $product.quantity > 0) && $product.customizable != 2}
{if !isset($product.id_product_attribute)}
{l s='Add to cart'}
{/if}
{else}
{l s='Add to cart'}
{/if}
{l s='View'}






En fait au lieu d'afficher le bouton "ajouter au panier" je test si ce produit est configuré avec des attributs, si pas d'attribut pour ce produit la variable "$product.id_product_attribute" n'existe pas (not set / ie !isset()), dans ce cas j'affiche le bouton.

Alek.


Stop creating test accounts on my shop, thank you!!!

#5
space

    PrestaShop Apprentice

  • Members
  • PipPip
  • 113 posts
Merci Alekhine, mais ce que je souhaite savoir, c'est si c'est possible dans la beta 1.2 ou s'il est prévu que ce soit implémenté prochainement...

Cdt

#6
Alekhine

    PrestaShop Addict

  • Members
  • PipPipPip
  • 711 posts
Vi je sais désolé, je n'ai pas la réponse pour la beta mais j'en ai profité pour donner l'astuce pour la 1.1.0.5 :p

Je pense que Patric C. pourra vous dire ce qu'il en est sur la beta.

++


Stop creating test accounts on my shop, thank you!!!

#7
jolvil

    PrestaShop Fanatic

  • Members
  • PipPipPipPip
  • 2706 posts
Merci pour le code :)
Il serai presque interessant d'avoir un texte en remplacement du bouton du style " ce produit a des options "

#8
Alekhine

    PrestaShop Addict

  • Members
  • PipPipPip
  • 711 posts
Hello,

Oui très bonne idée, mais je n'ai pas encore chercher à gérer les langues (mon site est et sera 100% fr...) donc il y a bien une solution mais c'est brut de décoffrage : texte directement dans le tpl :s

Il suffit de mettre un "else", et , par exemple, d'utiliser la class "exclusive" du bouton grisé "ajouter au panier" pour mettre le texte dont tu parles (le plus court possible...)

exemple:

{if !isset($product.id_product_attribute)}
{l s='Add to cart'}
{else}
(Options requises)
{/if}


Et tant qu'on y est, du coup il faudrait changer le texte "voir le produit" en "Choisir les Options" ou "Voir les Options"...

Attached Files




Stop creating test accounts on my shop, thank you!!!

#9
Alekhine

    PrestaShop Addict

  • Members
  • PipPipPip
  • 711 posts

From 1246267950:


Et tant qu'on y est, du coup il faudrait changer le texte "voir le produit" en "Choisir les Options" ou "Voir les Options"...


Ce qui donne ça :


{if ($product.allow_oosp OR $product.quantity > 0) && $product.customizable != 2}
{if !isset($product.id_product_attribute)}
{l s='Add to cart'}
{else}
(Options requises)
{/if}
{else}
{l s='Add to cart'}
{/if}
{if !isset($product.id_product_attribute)}
{l s='View'}
{else}
Voir les options
{/if}




Attached Files




Stop creating test accounts on my shop, thank you!!!

#10
space

    PrestaShop Apprentice

  • Members
  • PipPip
  • 113 posts
Je trouve ta proposition sympathique, mais ce que je souhaite c'est que le client puisse ajouter le produit au panier avec les bonnes options directement, et ce afin d'optimiser le taux de transformation...

Quelqu'un de la PrestaTeam pourrait certainement répondre à mon post initial... ?

Chers membres de la PrestaTeam, pourriez-vous nous renseigner, svp ? ;)

Cdt

#11
jolvil

    PrestaShop Fanatic

  • Members
  • PipPipPipPip
  • 2706 posts
pour la langue c'est simple, il suffit simplement de faire

{l s='(Options requises)'}


Ensuite aller dans le BO, Outils, traductions, choisir traductions de front office dans la langue choisie, chercher dans la liste product-list, là on trouve un champ correspondant à Options requises que l'on remplit par la traduction, ensuite on enregistre les modifications. Le fichiers de langue (fr.php, en.php... ) est mis à jour.

#12
space

    PrestaShop Apprentice

  • Members
  • PipPip
  • 113 posts
Un ptit Up pour pas qu'on m'oublie !

#13
Alekhine

    PrestaShop Addict

  • Members
  • PipPipPip
  • 711 posts

From 1246269324:

pour la langue c'est simple, il suffit simplement de faire

{l s='(Options requises)'}


Ensuite aller dans le BO, Outils, traductions, choisir traductions de front office dans la langue choisie, chercher dans la liste product-list, là on trouve un champ correspondant à Options requises que l'on remplit par la traduction, ensuite on enregistre les modifications. Le fichiers de langue (fr.php, en.php... ) est mis à jour.


Ah oui... c'est carrément très bien ce système !
Du coup j'ai corrigé au propre tout ce que j'avais modifié à la bourrin :-/


Stop creating test accounts on my shop, thank you!!!

#14
space

    PrestaShop Apprentice

  • Members
  • PipPip
  • 113 posts
Une piste qui serait magnifique, mais je capte rien à l'ajax... :(

Un module a été développé (une extension de blockcart) par Marghoob Suleman pour laisser le choix aux clients de rester sur la page actuelle lors de l'achat ou de procéder au paiement... si on pouvait remplacer ces choix par les groupes d'attributs, ça serait tout simplement superbe !

http://marghoobsulem...o-cart-extended

Qu'en pensez-vous ?

#15
jolvil

    PrestaShop Fanatic

  • Members
  • PipPipPipPip
  • 2706 posts
Est ce que tu as essayé de récuperer le code qui affiche les attributs dans product.tpl (fiche produit) pour l'afficher dans product-list.tpl (la liste de produits) ?

#16
Alekhine

    PrestaShop Addict

  • Members
  • PipPipPip
  • 711 posts
Je pense que ça serait assez facile à faire, mais si on a 5 ou 6 choix d'option... on va les mettre où ? :/
Va falloir un template adapté, donc potentiellement avec de grands espace blanc quand il y a peu ou pas d'option, ou, si c'est du flottant, un sacré décalage entre les affichages de produits :o


Stop creating test accounts on my shop, thank you!!!

#17
space

    PrestaShop Apprentice

  • Members
  • PipPip
  • 113 posts
2 choses:
- on peut faire ça sous forme de menu (nom du groupe d'attributs > sélection de l'attribut), menu qui apparait au surval du bouton ajouter au panier...
- le code du product.tpl ne convient pas car dans les autres pages l'objet $product n'est pas chargé alors qu'il l'est dans ce fichier... et si on charge un objet par produit affiché, à mon avis ça va ramer... je pense que c'est pour ça que ça ne semble pas avoir encore été développé...

#18
Lasher

    PrestaShop Newbie

  • Members
  • Pip
  • 1 posts
bonjour,

Je suis aussi trés intéressé par le développement d'une telle option.
Ci quelqu'un a une idée de comment implémenté ce développement dans prestashop ?
merci,

et encore un gros bravo à toute la team de presta

#19
Atch

    PrestaShop Fanatic

  • Moderators
  • 2918 posts
Salut,

petite idée qui me vient comme ça :

Si tu créées un attribut avec le nom "choisir une option" et que tu mets son stock à zéro.

avec l'option commande si stock supérieur à zéro le client ne pourra pas valider sa commande, le bouton est désactivé.

Du coup il est obligée de choisir un attribut " 90 B" par exemple qui lui n'est pas à zéro au niveau du stock.

Suis je clair?

V++

Atch

#20
space

    PrestaShop Apprentice

  • Members
  • PipPip
  • 113 posts
Oui Atch, mais comme je l'ai déjà précisé, si tu veux avoir le meilleur taux de transformation possible, il faut que le client puisse ajouter le produit avec le ou les bons attributs depuis n'importe quelle page d'où il est visible...

Cdt