Drupal Commerce. Löst Versandregeln basierend auf dem Produktfeldwert aus


18

Ich verliere wirklich den Willen zu leben und hoffe, dass mir jemand helfen kann.

Ich möchte eine Regel für den kostenlosen Versand basierend auf einem Produktfeldwert auslösen, kann das Feld für den kostenlosen Versand jedoch für mein Leben keinen Regeln aussetzen.

Ich habe gelesen, wie man Objekte in den Geltungsbereich bringt, und habe eine Komponente erstellt, die Zugriff auf das Feld hat. Wenn ich jedoch versuche, die Komponente als Bedingung für meine Regel hinzuzufügen, werde ich aufgefordert, die Datenauswahl einzugeben - keine davon scheint irgendwo hinzuführen. Ich denke, es wollte eine Produkt-ID, die für mich keinen Sinn ergibt.

Was mache ich falsch?


MEHR HINTERGRUND

Ich habe zwei Szenarien ausprobiert, von denen eines darin besteht, eine Versandregel basierend auf den folgenden Bedingungen zu erstellen. Die andere Möglichkeit besteht darin, eine Komponente wie oben beschrieben zu erstellen

Bedingung1 - Entität hat Feld> Parameter: Entität: [Handelsauftrag], Feld: field_free_shipping

Bedingung2 - Datumswert ist leer (auch Datenvergleich ausprobiert)> Dies führt mich jedoch nicht zu dem in Bedingung1 angegebenen Feld


1
Funktioniert es, wenn Sie die Bedingungen direkt in eine Regel einfügen und keine Komponente verwenden? Das ist die Erfahrung, die ich in der Vergangenheit gemacht habe
Clive

Wenn Sie versuchen, in einer Checkout-Regel auf den Feldwert zuzugreifen, müssen Sie zuerst "Entity has value" (Entität hat Wert) festlegen und dasselbe Feld prüfen, bevor Sie mit dem Datenvergleich beginnen Antwort ..
RajeevK

Bitte sehen Sie mehr Hintergrund - oben
MrPaulDriver

Können Sie mir das Ereignis mitteilen, das Sie zum Hinzufügen von Versand verwenden?
RajeevK

Sie müssen weitere Details angeben, um Hilfe zu erhalten, z. B. - Haben Sie das Versandereignis installiert, auf das Sie zugreifen möchten, auf welche Art von Feldwert Sie zugreifen möchten usw. Ich habe die Versandkonfiguration für den Preisvergleich eingerichtet (Gesamtwert weniger als etwas). , Verwendete Zahlungsart (bei Nachnahme), gekaufte Produktart.
Können

Antworten:


2

Es gelang mir schließlich, dies zum Laufen zu bringen, indem ich die Idee, benutzerdefinierte Felder zu haben, verwarf und sie durch taxonomische Begriffe ersetzte. Aus irgendeinem Grund (wahrscheinlich aus unerfahrenen Gründen) konnte ich meine benutzerdefinierten Felder nicht für das Regelmodul verfügbar machen, um die gewünschten Versandregeln auszulösen.

Durch die Nutzung des Commerce Rules Extra-Moduls konnte ich erstens meine Versandregeln basierend auf Taxonomiebedingungen anstelle von benutzerdefinierten Feldern auslösen und zweitens zusätzliche Bedingungen für das Auslösen dieser Regeln mithilfe des Modul-Betreuers @MarcElbichon definieren, wie hier erläutert. Https : // drupal.org/node/2087815


1

Ich tat dies -

Ich habe das Versand-Flatrate- Modul verwendet und eine Flatrate mit dem Namen " Kostenloser Versandpreis 0" erstellt. Dann habe ich die Komponente so bearbeitet, dass sie nur auf die erforderlichen Umstände zutrifft, und sie funktioniert wirklich gut.

Siehe Anhang.

FWIW Ich habe die Flatrate für den kostenlosen Versand und den Commerce-Gewichtstarif für den Rest verwendet, was bei mir sehr gut funktioniert.

Pauschalkomponente


Danke für deinen Vorschlag. Ich habe über diesen Ansatz nachgedacht, aber mein Kunde besteht darauf, nur einen Produkttyp zu haben. Nachdem ich mehr über sein Geschäft erfahren habe, kann ich seine Gründe dafür verstehen.
MrPaulDriver
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.