Shopware dispose d'un puissant module de frais de port que vous pouvez spécifiquement intervenir dans le calcul. Dans notre cas, nous souhaitons mettre en œuvre le scénario suivant: Les frais de port par article sont initialement déterminés en fonction du poids de l'article (les limites de poids sont précisées). Uniquement pour des exceptions spéciales, il devrait être possible de fixer des frais d'expédition fixes pour chaque article.
Le tableau des frais d'expédition ressemble à ceci:
Poids de | Poids vers le haut | Prix |
0 kg | <3 kg | 4,99 € |
3 kilogrammes | <5 kg | 6,90 € |
5 kilogrammes | <10 kg | 9,50 € |
10 kilogrammes | <15 kg | 10,90 € |
15 kilogrammes | <20 kg | 12,90 € |
20 kilogrammes | <31 kg | 17,90 € |
31 kilogrammes | <40 kg | 49,90 € |
à partir de 40 kg | 49,90 € prix de base + 0,59 € par kg |
Dans un premier temps, vous aurez peut-être l’idée de sélectionner la valeur «Poids» dans le champ «Calcul des frais d’expédition selon:» et de saisir les limites correspondantes ci-dessous:
Ici, vous avez plusieurs problèmes: La mise en œuvre de la règle "à partir de 40 kg: 49,90 € prix de base + 0,59 € par kg" n'est pas facile à mettre en œuvre, des valeurs comme 2 999 ne sont pas précises et il n'y a pas de possibilité d'allouer individuellement les frais d'expédition par article . Pour rendre cela possible, nous créons d'abord un nouveau champ de texte libre (par exemple "attr5") sous Paramètres> Article> Champs de texte libre d'article:
Nous allons maintenant remplir ce champ avec la valeur en euros pour tous les articles qui devraient avoir des frais de port individuels. Un point est utilisé à la place d'une virgule pour les nombres décimaux:
Enfin, nous créons un nouveau mode d'expédition avec les paramètres importants "Calcul des frais d'expédition selon: Calcul personnel" et "Facteur (%): 100":
Enfin, sous "Paramètres avancés", nous stockons notre nouvelle fonction de calcul sous "Calcul personnel":
a359cdf87765551f0706
Cette fonction prend le poids de chaque article et calcule le prix. Trois articles différents d'un poids de 2,5 kg coûtent 14,97 € et trois fois le même article d'un poids de 2,5 kg coûtent 9,50 €. Si vous souhaitez effectuer le calcul en fonction du poids total (avec le résultat 9,50 € dans les deux cas), vous ne modifiez la fonction de calcul que de manière minimale:
a359cdf87765551f0706
Si des concessionnaires doivent également être inclus, vous devez faire attention aux prix spécifiés dans la requête SQL, qu'ils soient des valeurs nettes ou brutes (en fonction des valeurs définies dans Paramètres de base> Paramètres de la boutique> Groupes de clients> Saisir les prix bruts).
Si vous souhaitez prendre en compte la fonctionnalité d'article "Marquer l'article comme livraison gratuite" (pour chaque article), adressez-vous à la colonne b.shippingfree et définissez l'option suivante dans Paramètres> Frais de livraison > Paramètres avancés> Articles avec livraison gratuite ":
Avec l'aide de SQL, vous pouvez intégrer toutes les requêtes complexes. Il est conseillé de préparer la requête finale à l'aide de variables SQL afin que l'ensemble reste facile à maintenir. Ce qui suit est un exemple exemplaire d'une requête plus complexe qui fait la distinction entre les clients de la boutique et les détaillants, prend en compte les articles livrés gratuitement, ne facture les frais d'expédition que pour un panier maximum et utilise différentes échelles de prix (selon la marque):
a359cdf87765551f0706