Warenkorb Preisregel versandkostenfrei nur für Mengenuntermenge desselben Produkts?


7

Ich möchte auch nur 6 Produkte, die mit SKUS AD übereinstimmen, versandkostenfrei versenden. Wenn ich beispielsweise 8 von Produkt A habe, sollte der kostenlose Versand nur für 6 dieser Produkte gelten. Im Moment bietet meine Warenkorb-Preisregel kostenlosen Versand für jede Kombination von AD-Produkten mit einer Menge von 6 oder mehr. Zum Beispiel kann ich mit 8 von Produkt A auschecken und bekomme kostenlosen Versand für die gesamte Bestellung. Wie kann ich die kostenlose Versandanwendung auf nur 6 Produkte beschränken, die mit SKUs AD übereinstimmen? Meine Warenkorbregel lautet:

Bedingungen

If ALL of these conditions are TRUE:
    If an item is FOUND in the cart with ALL of these conditions true:
        SKU is one of A, B, C, D
        Quantity in cart equals or greater than 6

Aktionen

Update prices using the following information
    Apply: Fixed amount discount for whole cart
    Discount Amount: 17.00
    Maximum Qty Discount is Applied to: 6
    Discount Qty Step (Buy X): 0
    Apply to Shipping Amount: No
    Free Shipping: For matching items only
    Stop Further Rules Processing: No

Apply the rule only to cart items matching the following conditions

    If ALL  of these conditions are TRUE :
        Quantity in cart  equals or greater than  6 
        SKU is one of A, B, C, D

Ich fürchte, es gibt keine solche Funktion. Sind Sie bereit, den Code zu ändern?
Amasty

Sie können, wenn Sie eine
Lösung dafür

Ich habe auch hier gegen die Wand geschlagen! Sehr überrascht über diese Einschränkung. Eine interessante Verbesserung scheint eine Regel zu sein, die mit 'first N' übereinstimmt.
MarkE

Antworten:


2

Kompatibilität

Hier ist eine Liste bekannter Magento-Versionen und Versandmethoden, mit denen diese Technik funktioniert, basierend auf persönlichem Erfolg und Community-Feedback. Bitte kommentieren Sie, ob Sie andere Versandmethoden oder -versionen bestätigen können, die dieser Liste hinzugefügt werden sollen.

1.4.x.

  • UPS

1.5.x.

  • UPS

1.6.x.

  • UPS

1.7.x.

  • UPS

1.8.x.

  • UPS

Fügen Sie den Produkten eine kostenlose Versandoption hinzu

Als erstes möchten wir ein Produktattribut erstellen, das uns die Möglichkeit gibt, den kostenlosen Versand unserer Produkte zuzulassen. Ich finde es einfacher, dies zu einem Dropdown-Feld zu machen, wie unten gezeigt.

Hier ist das Ziel:

1. Gehen Sie zu Katalog > Attribute > Attribute verwalten

2. Klicken Sie auf Neues Attribut hinzufügen

3. Füllen Sie die Felder wie in der Abbildung unten gezeigt genau aus. Sie können gegebenenfalls Ihren Geschäftsnamen für den Bereich auswählen . Sie können den Attributcode auch anders benennen, aber halten Sie ihn einfach, da wir dieses Feld später verwenden werden.

4. Stellen Sie sicher, dass Sie für die folgenden Optionen Ja auswählen , um die Option für kostenlosen Versand im Front-End sichtbar zu machen, und verwenden Sie das Attribut für Preisregelbedingungen .

5. Klicken Sie in der linken Seitenleiste auf Beschriftung / Optionen verwalten . Das Feld unter Admin ist der Text, der für Administratoren im Magento-Backend sichtbar ist (am besten als kostenloser Versand bezeichnen). Klicken Sie unten auf Option hinzufügen , um unsere Dropdown-Auswahl zu treffen. Wir müssen nur eine Auswahl treffen (Ja), wodurch der kostenlose Versand für ein bestimmtes Produkt aktiviert wird. Das Admin-Feld hier ist die Auswahl, die im Dropdown-Menü angezeigt wird. Das Feld unter Ihrem Geschäftsnamen ist der Text, den Front-End-Benutzer sehen. Die Position sollte 1 sein. Setzen Sie diese Option nicht als Standard , um zu vermeiden, dass allen Produkten automatisch ein Ja-Wert zugewiesen wird (das wäre schlecht).

6. Unser Attribut wird erstellt, aber wir müssen dieses neue Attribut einem Attributsatz zuweisen, damit es beim Erstellen oder Bearbeiten unserer Produkte tatsächlich verwendet wird. Gehen Sie zu Katalog > Attribute > Attributgruppen verwalten

7. Wenn Sie Glück haben, haben Sie das Standardattribut für Ihre Produkte verwendet. Wenn Sie wie ich Pech haben, haben Sie bereits einige Sets gemacht. Damit diese Option angezeigt wird, müssen Sie jeden Attributsatz auswählen und Schritt 8 für jeden ausführen .

8. Nachdem Sie auf einen Attributsatz geklickt haben, sehen Sie das kostenlose Versandattribut, das wir erstellt haben, in der Spalte Nicht zugewiesene Attribute rechts. Klicken und ziehen Sie das Attribut in einen der Abschnitte links. Sie können dieses Element an einer beliebigen Stelle platzieren. Dadurch wird festgelegt, wo es im Bereich "Produkte verwalten" verfügbar ist. In der Regel ist der Abschnitt Allgemein oder Preise hier am sinnvollsten. Denken Sie daran, dies für jeden Attributsatz zu tun, für den dies verfügbar sein soll

9. Jetzt sollten Sie in der Lage sein, unter Katalog > Produkte verwalten ein Produkt aus der Liste auszuwählen. Gehen Sie zu dem Abschnitt, in dem Sie das Attribut für den kostenlosen Versand unter (in meinem Fall Allgemein) gezogen haben, und scrollen Sie nach unten, um unser neues Attribut für den kostenlosen Versand zu finden.

Im Moment: Hier ist was wir haben. Wir haben gerade eine Option hinzugefügt, um den kostenlosen Versand von Produkten zu ermöglichen. Wenn Sie die Auswahl leer lassen, wird nichts ausgeführt. Wenn Sie jedoch Ja auswählen, wird der Versand für dieses bestimmte Produkt möglicherweise kostenlos. Für das Produkt wird jedoch noch kein kostenloser Versand gewährt. Lesen Sie weiter, um zu erfahren, wie Sie Magento dazu bringen, Produkten, denen dieses Attribut Ja zugewiesen ist, kostenlosen Versand zuzuweisen.



Machen Sie kostenlose Versandpreisregel

Wir haben die Schnittstelle eingerichtet, aber jetzt müssen wir dafür sorgen, dass sie richtig funktioniert.

1. Klicken Sie auf Aktionen > Preisregeln für Einkaufswagen

2. Klicken Sie auf Neue Regel hinzufügen

3. Geben Sie der Regel einen Namen und eine Beschreibung (diese dienen nur als Administratorreferenz). Setzen Sie den Status auf Aktiv . Lassen Sie das Feld "bis dato" leer, es sei denn, Sie möchten ein Ablaufdatum für den kostenlosen Versand (Hinweis: Wenn Sie ein Ablaufdatum festlegen, ist es standortweit und nicht pro Produkt).

4. Ignorieren Sie die Registerkarte Bedingungen. Klicken Sie stattdessen in der linken Seitenleiste auf Aktionen .

5. Ordnen Sie Ihre Felder den Feldern im Bild unten zu.

Anwenden: Prozent des Produktpreisnachlasses

Rabattbetrag: 0

Maximaler Mengenrabatt: 0

Rabatt Menge Schritt: 0

Kostenloser Versand: Nur für passende Artikel (sehr wichtig)

Stoppen Sie die weitere Regelverarbeitung: Nein

Behalten Sie für die Regeln die Standardeinstellung "Wenn ALLE diese Bedingungen WAHR sind" bei. Klicken Sie auf das Pluszeichen, um eine Bedingung hinzuzufügen. Wählen Sie Kostenloser Versand aus der Liste. Klicken Sie auf die Elipsen und wählen Sie in der Dropdown-Liste Ja aus (Hinweis: Wenn der kostenlose Versand nicht in dieser Liste enthalten ist, fahren Sie mit Schritt 4 im letzten Abschnitt fort und stellen Sie sicher, dass die Bedingungen für Preisregeln verwenden auf Ja gesetzt sind.)

6. Speichern Sie die Regel

Im Moment: Wir haben unseren Produkten eine kostenlose Versandoption hinzugefügt und die Bedingungen für die Anwendung der Regel geschaffen. Das Letzte, was wir tun müssen, ist, Magentos zentrale kostenlose Versandoption zu aktivieren.



Kostenlosen Versand aktivieren

Wie wir bereits wissen, funktioniert die kostenlose Versandoption von Magento nur für einen Mindestbestellbetrag. Das ist nicht das, wonach wir suchen. Wir müssen jedoch die Kernfunktion für kostenlosen Versand von Magento aktivieren, damit es weiß, wie es mit unserer Regel umgeht.

1. Klicken Sie auf System > Konfiguration

2. Finden Sie Verkäufe > Versandmethoden in der linken Seitenleiste.

3. Der nächste Schritt wird durch Ihre Versandart bestimmt. Ich werde externe und interne Taschenrechner behandeln.

Interne Taschenrechner

1. Wenn Sie keine externen Taschenrechner verwenden, wählen Sie in dieser Liste die Option Kostenloser Versand.

2. Setzen Sie Aktiviert auf Ja. Hier ist der Trick : Stellen Sie den Mindestbestellwert auf eine unverschämte Zahl ein, z. B. 9999999999.99. Auf diese Weise können wir den kostenlosen Versand aktivieren, ohne uns um Fehlalarme sorgen zu müssen.

Verwendung eines Versandanbieters (UPS, USPS, FedEx, DHL)

1. In meinem Fall verwende ich UPS für meinen Versandrechner. Die anderen Anbieter bieten ähnliche Felder an, sodass Sie in der Lage sein sollten, mitzumachen.

2. Füllen Sie alle entsprechenden Felder aus, z. B. Gateway-URL, zulässige Methoden usw. Diese Daten finden Sie auf der Website Ihres Versandanbieters. (Diese Informationen müssen korrekt sein, damit Magento den Rechner eines Drittanbieters erreicht. Außerdem muss sich Ihr Versandkonto im Produktionsmodus befinden.)

3. Wir sind am meisten an der Option "Kostenlose Methode" interessiert. In meinem Fall möchte ich, dass meine Produkte kostenlosen Versand auf dem Landweg erhalten. Kostenloser Versand mit Mindestbestellmenge ist deaktiviert. Ich habe meinen Mindestbestellwert immer noch auf eine unverschämte Zahl wie 9999999999.99 festgelegt, nur für den Fall. Auf diese Weise können wir den kostenlosen Versand aktivieren, ohne uns um Fehlalarme sorgen zu müssen.

4. Aktivieren Sie den Anbieter.

5. Testen Sie die Regel für den kostenlosen Versand, indem Sie ein Produkt bearbeiten, wählen Sie "Ja" für den kostenlosen Versand, legen Sie es in den Warenkorb und führen Sie den Kostenvoranschlag für Versand und Steuern aus. Ich habe mich für Free Ground Shipping entschieden, daher spiegelt sich dies im Angebotsgenerator wider.

Gerade jetzt : An dieser Stelle können Sie erstellen oder bearbeiten Sie ein Produkt, wählen Sie Ja aus dem freien Versand Dropdown-Feld, und das Produkt wird Versand ist kostenfrei. Wenn Benutzer einen Artikel mit und ohne kostenlosen Versand haben, wird dieser nur auf Artikel mit aktiviertem kostenlosem Versand angewendet (vorausgesetzt, Sie haben Schritt 5 im ersten Abschnitt ausgeführt, indem Sie Nur passende Artikel auswählen ausgewählt haben ). Sie können es hier beenden oder weiterlesen, um zu erfahren, wie Sie Kunden darüber informieren können, für welche Artikel der kostenlose Versand aktiviert ist.



Zeigen Sie den Kunden im Front-End den Dialog zum kostenlosen Versand

Hier ist das Ziel :

1. Suchen Sie die Vorlagendatei, zu der Sie den kostenlosen Versandtext hinzufügen möchten, z. B. eine Produktseite. Das Finden bestimmter Vorlagendateien liegt außerhalb des Bereichs dieses Lernprogramms.

2. Angenommen, Sie haben Ihrer Regel den gleichen Attributcode gegeben, den ich in Schritt 3 des ersten Abschnitts (free_shipping_discount) verwendet habe, fügen Sie den folgenden Code an der Stelle ein, an der der kostenlose Versandtext angezeigt werden soll. In der ersten Zeile wird geprüft, ob der Artikel versandkostenfrei ist. In der zweiten Zeile wird der Text angezeigt. Anschließend wird die if-Anweisung beendet.

Quelldruck anzeigen? 1<? php 2if ($ _product-> getFreeShippingDiscount ()): 3    echo '<span class = "freeShip">'. $ _ product-> getAttributeText ('free_shipping_discount'). '</ span>'; 4endif?>

3. Beachten Sie, dass ich den Text mit einer Klasse in ein ap-Tag eingefügt habe. Sie können dies ändern, wie Sie möchten. Auf diese Weise kann ich den Text formatieren und ein Hintergrundbild zuweisen, um den Effekt zu vervollständigen.

4. Es wird empfohlen, diesen Code auch in die Warenkorbseite aufzunehmen, da der kostenlose Versand nur für bestimmte Artikel gilt. Dadurch erfahren Benutzer, welche Artikel in ihrem Warenkorb versandkostenfrei sind.

Die Seite cart.phtml erfordert einen anderen Aufruf. Verwenden Sie den folgenden Code in Ihrer Vorlage / Kasse / Warenkorb / Artikel / Standard.phtml:

Quelldruck anzeigen? 1<! - wenn Artikel     versandkostenfrei ist -> 2<? php 3echo '<span class = "free-ship">'. Mage :: getModel ('Katalog / Produkt') -> load ($ this-> getProduct ( ) -> getId ()) -> getAttributeText ('free_shipping_discount'). '</ span>'; 4?>
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.