Search the Community
Showing results for tags 'combinaison'.
-
Bonjour, Je souhaite dans la sélection d'un produit plusieurs choses, un exemple concret j'ai un produit unique qui est un pack de 5 produits a choisir parmis une 10aine de possibilités sans changement de prix, on choisit juste 5 odeurs parmis 10 vous avez un exemple de plugin qui permet cela? je souhaite aussi faire un produit pack échantillon et a chaque echantillon selectionné on augmente le prix final du produit. Une idée?
-
In my shop, I sell products that are grouped in different combinations, including digital and paper. Digital combinations not the same tax as paper products. Where to modify the code to allow to change the tax according to the combination? I do not want to duplicate my catalog to separate the two types of products. Thank you
-
Bonjour, J'ai deux produits principaux qui se vendent parfois ensemble et parfois séparés. Produit principal A Produit principal B Lorsque le client choisi le produit A, il devrait avoir le choix de sélectionner avec ou sans le produit B. Il devrait également pouvoir choisir le produit B de manière indépendante. Les attributs ne fonctionnent pas car ils ne déduisent pas le stock du produit B. Les packs ne fonctionnent pas car il n'est pas possible de sélectionner les produits séparément. Y a-t-il une méthode simple afin de gérer ce type de cas ? Merci beaucoup, Martin.
- 5 replies
-
- pack
- combinaison
-
(and 1 more)
Tagged with:
-
Bonsoir à tous ! Voilà, aujourd'hui ma boutique affiche dans la page produit, les produits associés sous le produit. Jusque là tout va bien. Chaque produit associé a des menus déroulants pour sélectionner les déclinaisons. Ex : Produit 1 - Select pour la couleur - Select pour la taille - Select pour la quantité Produit 2 - Select pour la couleur - Select pour la taille - Select pour la quantité Cette configuration n'est pas pratique du tout. J'aimerais que les clients puissent choisir plusieurs déclinaisons en même temps, c'est à dire un format : Produit 1 - Couleur 1 - Taille 1 - Select pour la quantité Produit 1 - Couleur 1 - Taille 2 - Select pour la quantité Produit 2 - Couleur 1 - Taille 1 - Select pour la quantité Produit 2 - Couleur 2 - Taille 1 - Select pour la quantité En gros une ligne par combinaison. Voilà le code que j'utilise pour le moment : <div class="productlist_add"> <input type="hidden" name="actual_prod_id" id="actual_prod_id" value="{$association.id_product}" /> <input type="hidden" name="quantity_nocomb" id="quantitynocomb_{$association.id_product}" value="{$quantitynocomb_{$association.id_product[spam-filter]" /> {if $pricenocomb_{$association.id_product[spam-filter] <input type="hidden" name="price_nocomb" id="pricenocomb_{$association.id_product}" value="{$pricenocomb_{$association.id_product[spam-filter]" /> {/if} <input type="hidden" name="id_product_attribute" id="idCombination_assoc_{$association.id_product}" value="" /> {if ($association.id_category_default != $ex)} <h1>{$association.category_default}</h1> {/if} {assign var='ex' value=$association.id_category_default} {if !$priceDisplay || $priceDisplay == 2} {assign var='productPrice' value=$product_{$association.id_product}->getPrice(true, $smarty.const.NULL, 6)} {assign var='productPriceWithoutReduction' value=$product_{$association.id_product}->getPriceWithoutReduct(false, $smarty.const.NULL)} {elseif $priceDisplay == 1} {assign var='productPrice' value=$product_{$association.id_product}->getPrice(false, $smarty.const.NULL, 6)} {assign var='productPriceWithoutReduction' value=$product_{$association.id_product}->getPriceWithoutReduct(true, $smarty.const.NULL)} {/if} {assign var='ppe' value=($product_{$association.id_product}->getPriceWithoutReduct(true)|default:'null' - $product_{$association.id_product}->ecotax)|floatval} {assign var='ppi' value=($product_{$association.id_product}->getPriceWithoutReduct(false)|default:'null' - $product_{$association.id_product}->ecotax * (1 + $ecotaxTax_rate / 100))|floatval} <input type="hidden" id="productPriceTaxExcluded_{$association.id_product}" value="{$ppe}" /> <input type="hidden" id="productPriceTaxIncluded_{$association.id_product}" value="{$ppi}" /> <input type="hidden" id="producttest_{$association.id_product}" value="" /> <div id="short_description_content" class="rte align_justify" itemprop="description">{$association.name}</div> <div class="box-info-product"> <div class="product_attributes clearfix"> <!-- attributes --> <div id="attributes_{$association.id_product}" class="attributes"> {if isset($groups_{$association.id_product}) && $groups_{$association.id_product[spam-filter] {foreach from=$groups_{$association.id_product} key=id_attribute_group item=group} {if $group.attributes|@count} <fieldset class="attribute_fieldset"> <!--<label class="attribute_label" {if $group.group_type != 'color' && $group.group_type != 'radio'}for="group_{$id_attribute_group|intval}"{/if}>{$group.name|escape:'html':'UTF-8'} </label>--> {assign var="groupName" value="group_$id_attribute_group"} <div class="attribute_list"> {if ($group.group_type == 'select')} <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="form-control attribute_select_{$association.id_product} no-print"> {foreach from=$group.attributes key=id_attribute item=group_attribute} <option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'html':'UTF-8'}">{$group_attribute|escape:'html':'UTF-8'}</option> {/foreach} </select> {elseif ($group.group_type == 'color')} <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="form-control attribute_select_{$association.id_product} no-print"> {foreach from=$group.attributes key=id_attribute item=group_attribute} <option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'html':'UTF-8'}">{$group_attribute|escape:'html':'UTF-8'}</option> {/foreach} </select> {elseif ($group.group_type == 'radio')} <ul> {foreach from=$group.attributes key=id_attribute item=group_attribute} <li> <input type="radio" class="attribute_radio" name="{$groupName|escape:'html':'UTF-8'}" value="{$id_attribute}" {if ($group.default == $id_attribute)} checked="checked"{/if} /> <span>{$group_attribute|escape:'html':'UTF-8'}</span> </li> {/foreach} </ul> {/if} </div> <!-- end attribute_list --> </fieldset> {/if} {/foreach}{/if} </div> <!-- end attributes --> <!-- quantity wanted --> {if !$PS_CATALOG_MODE} <p id="quantity_wanted_p"{if (!$allow_oosp && $product->quantity <= 0) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}> <select name="qty" id="quantity_wanted_{$association.id_product}" class="attribute_select_qty no-print"></select> </p> {/if} <!-- minimal quantity wanted --> <p id="minimal_quantity_wanted_p"{if $product->minimal_quantity <= 1 || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}> {l s='The minimum purchase order quantity for the product is'} <b id="minimal_quantity_label">{$product->minimal_quantity}</b> </p> </div> <!-- end product_attributes --> </div> <div class="content_availability clearfix"> <!-- availability or doesntExist --> <p id="availability_statut_{$association.id_product}"{if !$PS_STOCK_MANAGEMENT || ($product_{$association.id_product}->quantity <= 0 && !$product_{$association.id_product}->available_later && $allow_oosp) || ($product_{$association.id_product}->quantity > 0 && !$product_{$association.id_product}->available_now) || !$product_{$association.id_product}->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}> {*<span id="availability_label">{l s='Availability:'}</span>*} <span id="availability_value_{$association.id_product}" class="label{if $product_{$association.id_product}->quantity <= 0} label-warning{else} label-success{/if}">{if $product_{$association.id_product}->quantity <= 0}{if $PS_STOCK_MANAGEMENT && $allow_oosp}{$product_{$association.id_product}->available_later}{else}{l s='This product is no longer in stock'}{/if}{elseif $PS_STOCK_MANAGEMENT}{l s='Livré sous 48h'}{/if}</span> </p> {if $PS_STOCK_MANAGEMENT} {if !$product_{$association.id_product}->is_virtual}{hook h="displayProductDeliveryTime" product=$product_{$association.id_product[spam-filter]{/if} <p class="warning_inline last_quantities" id="last_quantities_{$association.id_product}"{if ($product_{$association.id_product}->quantity > $last_qties || $product_{$association.id_product}->quantity <= 0) || $allow_oosp || !$product_{$association.id_product}->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >{l s='Warning: Last items in stock!'}</p> {/if} <p id="availability_date_{$association.id_product}"{if ($product_{$association.id_product}->quantity > 0) || !$product_{$association.id_product}->available_for_order || $PS_CATALOG_MODE || !isset($product_{$association.id_product}->available_date) || $product_{$association.id_product}->available_date < $smarty.now|date_format:'%Y-%m-%d'} style="display: none;"{/if}> <span id="availability_date_label_{$association.id_product}">{l s='Availability date:'}</span> <span id="availability_date_value_{$association.id_product}">{if Validate::isDate($product_{$association.id_product}->available_date)}{dateFormat date=$product_{$association.id_product}->available_date full=false}{/if}</span> </p> <!-- Out of stock hook --> <div id="oosHook_{$association.id_product}"{if $product_{$association.id_product}->quantity > 0} style="display: none;"{/if}> <!-- MODULE MailAlerts --> {if isset($email) AND $email} <p class="form-group"> <input type="text" id="oos_customer_email_{$association.id_product}" name="customer_email_{$association.id_product}" size="20" value="{l s='[email protected]' mod='mailalerts'}" class="mailalerts_oos_email form-control" /> </p> {/if} <a href="#" title="{l s='Notify me when available' mod='mailalerts'}" id="mailalert_link_{$association.id_product}" rel="nofollow">{l s='Notify me when available' mod='mailalerts'}</a> <span id="oos_customer_email_result_{$association.id_product}" style="display:none; display: block;"></span> </div> </div> <div class="content_prices clearfix content-price-3"> {if $product_{$association.id_product}->show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE} <!-- prices --> <div> <p id="old_pricebis" {if (!$product_{$association.id_product}->specificPrice || !$product_{$association.id_product}->specificPrice.reduction)} class="hidden"{/if}>{strip} {if $priceDisplay >= 0 && $priceDisplay <= 2} {hook h="displayProductPriceBlock" product=$product_{$association.id_product} type="old_price"} <span id="old_price_display_{$association.id_product}"><span>{if $productPriceWithoutReduction > $productPrice}{convertPrice price=$productPriceWithoutReduction|floatval}{/if}</span>{if $productPriceWithoutReduction > $productPrice && $tax_enabled && $display_tax_label == 1} {if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if}</span> {/if} {/strip}</p> <p class="our_price_display_{$association.id_product} price-block" itemprop="offers" itemscope itemtype="https://schema.org/Offer" >{strip} {if $product_{$association.id_product}->quantity > 0}<link itemprop="availability" href="https://schema.org/InStock"/>{/if} {if $priceDisplay >= 0 && $priceDisplay <= 2} <span id="our_price_display_{$association.id_product}" class="price" itemprop="price" content="{$productPrice}">{convertPrice price=$productPrice|floatval}</span> {if $tax_enabled && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))} {if $priceDisplay == 1} {l s='tax excl.'}{else} {l s='tax incl.'}{/if} {/if} <meta itemprop="priceCurrency" content="{$currency->iso_code}" /> {hook h="displayProductPriceBlock" product=$product type="price"} {/if} {/strip}</p> {if $priceDisplay == 2} <br /> <span id="pretaxe_price">{strip} <span id="pretaxe_price_display">{convertPrice price=$product_{$association.id_product}->getPrice(false, $smarty.const.NULL)}</span> {l s='tax excl.'} {/strip}</span> {/if} </div> <!-- end prices --> {if $packItems|@count && $productPrice < $product->getNoPackPrice()} <p class="pack_price">{l s='Instead of'} <span style="text-decoration: line-through;">{convertPrice price=$product->getNoPackPrice()}</span></p> {/if} {if $product->ecotax != 0} <p class="price-ecotax">{l s='Including'} <span id="ecotax_price_display">{if $priceDisplay == 2}{$ecotax_tax_exc|convertAndFormatPrice}{else}{$ecotax_tax_inc|convertAndFormatPrice}{/if}</span> {l s='for ecotax'} {if $product->specificPrice && $product->specificPrice.reduction} <br />{l s='(not impacted by the discount)'} {/if} </p> {/if} {if !empty($product->unity) && $product->unit_price_ratio > 0.000000} {math equation="pprice / punit_price" pprice=$productPrice punit_price=$product->unit_price_ratio assign=unit_price} <p class="unit-price"><span id="unit_price_display">{convertPrice price=$unit_price}</span> {l s='per'} {$product->unity|escape:'html':'UTF-8'}</p> {hook h="displayProductPriceBlock" product=$product type="unit_price"} {/if} {/if} {*close if for show price*} {hook h="displayProductPriceBlock" product=$product_{$association.id_product} type="weight" hook_origin='product_sheet'} {hook h="displayProductPriceBlock" product=$product_{$association.id_product} type="after_price"} <div class="clear"></div> </div> <!-- end content_prices --> </div><!-- end productlist_add --> Pour être tout à fait honnête, je ne suis pas attaché à ce code, je peux tout changer sans soucis. Le problème c'est que je ne comprends pas la méchanique d'ajout au panier sur Presta. Quels sont les inputs obligatoires ? Quand je fais un test d'ajout de combinaisons, dans ma page commande j'ai des id du style : product_223_515_0_0 J'ai bien compris pour le premier 223 qui est l'id du produit et 515 sa variation que j'ai ajouté au panier, mais après ... En soit réaliser un formulaire avec toutes les combinaisons est ok pour moi. Là où je bloque c'est donc la valeur que je dois ajouter aux input associés à ces lignes ! Une piste pour m'aider ? Merci d'avance !!!
-
Bonjour à tous !! Je suis 1.7.3 et j'ai le module AWP ou (Attribut Assistant Pro pour la version 1.7) d'installé. Tout fonctionne bien à l'exception des attributs qui affichent les "price impact" avec les taxes en fonction de l'emplacement. Ex: ligne 1 __________ (Ajoutez 1,15$) au lieu de (Ajoutez 1,00$) donc pour le Canada français qui est de 15% de taxes. Par contre, les prix s'affichent correctement dans le panier. Le problème se situe seulement au niveau de l'affichage des attributs ou combinaisons sur la fiche produit ... Bref, quelqu'un aurait une idée d'où provient cette taxe? J'ai demander au développeur de AWP bien-sûr, mais après plusieurs tentatives, il m'affirme n'être pas en mesure de m'aider car de son côté, les taxes ne s'affiche pas (autres pays) et pas en mesure de reproduire le problème et m'affirme fièrement ne pas s'occupé de problème dû à prestashop core ou autres modules .. Aussi, j'ai vérifié l'affichage de groupe, j'ai modifié ma localisation et les taxes se modifient en fonction mais s'affichent toujours... Alors quelqu'un aurait déjà rencontré ce problème ?? Merci!!
-
PrestaShop version: 1.7.2.0 Bonjour, J'essai d’intégrer le owl carrousel dans la page produit. N'ayant pas forcement beaucoup de thumbnails , il serait plus approprié de les enlever pour améliorer le UI/UX. Le carrousel fonctionne, charge les différentes images, seulement lorsque je choisi une combinaison (couleurs, taille etc..) , la page se recharge je pense en ajax et la le carrousel ne se réinitialise pas, conséquence toutes les images les une en dessous des autres au lieu d'avoir un carrousel. La fonction du "refresh" ou "updateProduct" se trouve dans core.js il me semble, De plus le même problème existe lorsque l'on clic sur "aperçu rapide" dans les listes de produit. Y a t'il un moyen de réinitialiser le carrousel lorsque la fonction des combinaisons est finit, et lorsque l'aperçu rapide se charge?
- 1 reply
-
- produit
- owl carousel
- (and 9 more)
-
Hello, I am setting up a new website using product combinaison on PS1.6 and I have a problem with the image of product displayed in cart (ajax and order confirmation). The image displayed doesn't not correspond to the combination of product selected in cart. PS displayes the smallest id_image of product combination and not the first position image of the product combinaison selected in cart. I have not found any similar topic on forum Thanks in advance for any help
-
Bonjour, Je voulais savoir s'il était possible d'ajouter un champs texte (description par exemple), par combinaison. Par défaut on peu renseigner "Référence", "Code barres", "Prix d'achat", "Impact sur le prix", etc... Mais est ce possible d'intercaler un champ texte de la même manière ? Merci d'avance pour vos réponses!
-
- champ
- combinaison
-
(and 2 more)
Tagged with:
-
Hi, I have a question about Prestashop 1.5 and the color picker. Why the color picker are disable in the product page ? How can I add this feature ? Thanks.
-
Bonjour, 1mn pour charger une page de 20 produits, pourquoi ? Parce qu'il y a 12 combinaisons par produits et plus de 500 produits dans la catégorie !!!! Après tests, il s'avère que ce temps de chargement trop long vienne de la combinaison d'un grand nombre de produits par catégorie et de beaucoup de combinaisons par produits. Si peu de produits et bcq de combinaisons : temps de chargement rapide Si beaucoup de produits et peu de combinaisons : temps de chargement rapide Si beaucoup de produits et beaucoup de combinaisons : temps de chargement très lent. En gros, ça ressemble à du code chronophage A part réduire le nombre de combinaisons, auriez-vous une solution ????? Merci de votre aide à tous
- 7 replies
-
- combinaison
- declinaison
-
(and 2 more)
Tagged with:
-
Compatibilité Prestashop Compatible Prestashop V1.4 (la version pour Prestashop V1.3 est en cours de développement) Description VisualDeclination permet d'avoir une visualisation complète des déclinaisons d'un produit sur la page 'product', permettant ainsi à votre client d'avoir une vision globale de toutes vos déclinaisons. Un bouton -ajouter au panier- existe sur toutes déclinaisons, utilisant la fonctionnalité du panier Ajax de Prestashop. Fonctionnalités: Les informations : Quantité en stock, référence, nom, délai de livraison sont configurables afin d'en permettre ou non l'affichage L'affichage de la vignette est configurable (si plusieurs images existent pour la déclinaison, seule la première est affichée). Le nombre de déclinaisons sur la page 'produit' à afficher est configurable Un lien 'afficher tout' existe et oriente ainsi le visiteur sur la liste globale des déclinaisons du produit Installation : VisualDeclination s'installe simplement (ajout module), La page de configuration est simple et intuitive, les différentes fonctions s'activent et se désactivent. Le rendu sur la page -product- est immédiat. Disponible sur prestashop addons Les mises à jour éventuelles à venir sont fournies gratuitement sur simple demande avec copie de la facture prestastore.
- 2 replies
-
- combination
- declination
-
(and 2 more)
Tagged with:
-
Bonjour à tous, Après avoir parcouru les différents topics, je n'ai toujours pas de solutions à mon problème. Mon problème est donc celui-ci : A l'achat d'un produit A et d'un produit B, le prix de l'achat B est diminué de moitié. A l'achat d'un produit Z et d'un produit C, le prix de l'achat C est diminué d'un quart. Pour faire cette réduction, il me semble qu'il faut paramétrer les "règles paniers" mais malheureusement cela ne fonctionne pas : - en utilisant différentes règles paniers "cumulables", j'arrive à obtenir les intitulés des réductions correctes mais le montant inscrits pour la deuxième et suivante réduction n'est pas la bonne et correspond uniquement montant de la première. - en utilisant différentes règles paniers "non cumulable" (c'est-à-dire en créant une règle panier par combinaison de produits), Prestashop ne prend en compte que la première réduction validée ( car les conditions sont uniquement " Le panier doit contenir au moins...... produit(s) correspondent aux règles suivantes : ") Est-ce qu'une âme charitable aurait la solution de mon problème? Merci à vous
- 3 replies
-
- Réduction
- combinaison
-
(and 1 more)
Tagged with:
-
Rapide, sélectionnez les images pour générer les combinaisons. Ce module affiche une liste en pop up des images de produits pour chaque combinaison, la sélection des images par ce procédé vous fera gagner du temps. Pas de clics supplémentaires, aucun bouton Enregistrer, aucun rechargement de la page, cochez simplement les cases à côté des images. Pour plus d'informations, visitez-nous sur: http://www.cartexpert.net/back-office-modules/57-prestashop-combination-images-fast-select.html
-
- combinaison
- images
-
(and 3 more)
Tagged with:
-
Bonjour, Je suis à la recherche d'une méthode ou d'une contribution pouvant permettre la génération de référence structurée suivant l'ajout d'attributs à un produit. Je m'explique: > imaginons le produit iPod : ref = ipod > options 1 choisie: 16 go: ref de cette option = 16G > option 2 choisie: couleur vert : ref de cette option = VT Lors de la génération des combinaisons de produits/attributs, existe t'il une méthode pouvant générer des références uniques faites de la somme des attributs? Donc dans mon exemple, qu'on obtienne un produit avec la référence ipod-16G-VT. Si quelqu'un a une idée pcq je bloque vraiment là dessus et je dois gérer un catalogue de 8000 références et j'ai pas trop envie de les encoder manuellement. Je dispose d'un tableur excel de tous les produits > ma seule idée c'est de travailler directement en excel et d'aller importer les références dans les tables en direct mais c'es très lourd comme process aussi. Merci pour votre aide