Hallo zusammen, die Frage kommt bei meinen Kunden immer wieder auf. Jetzt möchte ein Kunde aber folgendes unbedingt realisiert haben: Der Kunde versendet Wein. Damit es nicht zu Transportschäden kommt, sollten die Versandkartons möglichst voll sein. Das heißt Gambio sollte nach Möglichkeit einen Hinweis bringen, wenn die bestellt Menge nicht durch 6 teilbar ist. Das Checkout sollte dann nicht weiter gehen. Manchmal habe ich das gelöst, in dem ich bei den Zwischenmengen einen höheren Preis angesetzt habe. Aber das möchte der Kunde nicht. Da die Kunden sich natürlich die Weine unterschiedlich zusammen stellen können bringt eine Angebe von Mindestmenge oder Steffelung beim einzelnen Artikel nichts. Da ich nicht der einzige bin, der Weinshops betreibt und das Thema früher auch schon öfters mal diskutiet wurde, wolle ich mal wieder nachfragen, ob es da inzwischen schon eine Lösung gibt. Vielleicht eine externe Lösung? Viele Grüße Rolf
Hallo, hmmm... der Ansatz wäre evtl. über ein Modulo realisierbar: menge (modulo) 6 = 0 ? aufgeht's, ... wenn nicht, dann die nächst höhere oder niedrigere menge vorschlagen..., aber schon etwas ärgerlich, wenn ich 8 Flaschen kaufen möchte und mir gesagt wird: hey, leider passt deine Bestellung uns nicht, kauf doch 4 mehr oder 2 weniger ein. Was mache ich wohl? Vielleicht wäre der Ansatz an der Verpackung an sich interessanter für deine Kunden. Also nicht Standard für die Menge 6 ausgelegte Verpackung erwerben, sondern evtl. Verpackungen wo auch mal 4 Flaschen passen, bei drei bestellten Flaschen.. usw. & sofort
Hi, ich habe da mal was vorbereitet! Erstelle auf dem Server im Ordner /GXUserComponents/overloads/ den Ordner "ShoppingCartContentView" und lege dort eine Datei mit dem Namen " ShippingQuantityShoppingCartContentView.inc.php" an. Füge dann folgenden Inhalt in dieser neuen Datei ein: PHP: <?phpclass ShippingQuantityShoppingCartContentView extends ShippingQuantityShoppingCartContentView_parent{ public function prepare_data() { parent::prepare_data(); if($_SESSION['cart']->count_contents()%6 !==0) { $this->_setContentDataInfoMessage('Die bestellte Menge ist nicht durch 6 teilbar.'); $this->_setSessionValueAllowCheckout('false'); } }} Nachdem dann im Gambio Admin der Cache geleert wurde, sollte man im Warenkorb eine Meldung sehen wenn die Menge nicht durch 6 teilbar ist und der Bestellvorgang kann nicht fortgesetzt werden.
Hallo Till, da kommt eine Fehlermeldung: WARNING(2): "class_parents(): Class ShippingQuantityShoppingCartContentView does not exist and could not be loaded" WARNING(2): "array_values() expects parameter 1 to be array, boolean given" FATAL ERROR(1): "Class 'ShippingQuantityShoppingCartContentView' not found" Der Shop: https://www.shop-weingut-graeber.de
@Rolf Maurer Hast du auch wirklich den Quelltext in die Datei kopiert? Denn wenn die Datei einen Inhalt hat, sollte der Fehler nicht angezeigt werden. Der Fehler wird immer dann angezeigt, wenn die Datei leer ist.
Hallo Till, danke. Funktioniert prima. Da war der Inhalt wohl nicht richtig gespeichert. Nochmal die Datei neu gespeichert und es funktioniert.