Je ne connais pas les catégories, mais si vous voulez ajouter une quantité minimale autorisée pour une seule page de produit, il y a un moyen de le faire. En utilisant Magento, créez la page du produit comme vous le feriez normalement. Une fois créé, allez sur la page et affichez le code source. Saisissez tout le code et videz-le dans un éditeur (c'est-à-dire notepad ++). De là, faites défiler le code jusqu'à la ligne 560-580 en fonction de votre disposition.Vous devriez trouver la fonction javascript:
productAddToCartForm.submit = function(button, url) {
if (this.validator.validate()) {
var form = this.form;
var oldUrl = form.action;
if (url) {
form.action = url;
}
var e = null;
try {
this.form.submit();
} catch (e) {
}
this.form.action = oldUrl;
if (e) {
throw e;
}
if (button && button != 'undefined') {
button.disabled = true;
}
}
}.bind(productAddToCartForm);
De là, vous le modifier pour ressembler à quelque chose de similaire à ceci:
productAddToCartForm.submit = function(button, url) {
var LJSM1 = parseFloat(document.getElementById('bundle-option-1-qty-input').value);
var L2 = parseFloat(document.getElementById('bundle-option-2-qty-input').value);
var L3 = parseFloat(document.getElementById('bundle-option-3-qty-input').value);
var L4 = parseFloat(document.getElementById('bundle-option-4-qty-input').value);
var L5 = parseFloat(document.getElementById('bundle-option-7-qty-input').value);
var L6 = parseFloat(document.getElementById('bundle-option-6-qty-input').value);
if (this.validator.validate()) {
if((L1+L2+L3+L4+L5+L6) <= 15){
alert("Sorry you are below the minimum order. Please increase your order to 16 or more to continue.");
}
else{
var form = this.form;
var oldUrl = form.action;
if (url) {
form.action = url;
}
var e = null;
try {
this.form.submit();
} catch (e) {
}
this.form.action = oldUrl;
if (e) {
throw e;
}
if (button && button != 'undefined') {
button.disabled = true;
}
}
}
}.bind(productAddToCartForm);
Dans mon cas, j'ai ajouté d'une simple instruction if/else et appelé les options dans la page et les a assignés à une variable que j'ai alors additionnée. Après avoir modifié ce code, vous pouvez l'enregistrer dans un fichier .html portant le même nom que l'URL de la page d'origine, puis le télécharger à la racine de votre répertoire magento. Cela agit comme une sorte de masque à la page d'origine et ainsi lors de la navigation sur le produit, vous serez dirigé vers cette page à la place de la page Magento d'origine. Le panier, les options et le script Java fonctionneront toujours et tout fonctionnera normalement. Les seuls inconvénients sont que, quelle que soit la page ressemblait quand vous avez attrapé le code est ce que cela ressemblera à tout le monde. Je vous recommande donc de supprimer le code de votre panier, de la comparaison des produits et de tout autre élément qui aurait des données uniques afin qu'il n'y ait pas de confusion. En plus de cela, si vous apportez des modifications à la page Magento originale ou à vos thèmes, vous devrez recommencer le processus très rapidement pour mettre à jour le code.
Pourquoi ne pas simplement utiliser "Qté minimum autorisée dans le panier" par produit, que ce soit par produit ou Global sans codage personnalisé? – B00MER
Je crois qu'il n'y a pas de paramètre global. Dans la configuration, il est clairement indiqué "Notez que ces paramètres sont applicables aux articles de la ligne de panier, pas au panier entier". – clockworkgeek