haeuselmann Posted June 15, 2011 Report Share Posted June 15, 2011 Hallo zusammen Ich habe schon alles durchsucht, aber habe bis jetzt leider nichts gefunden. Ich möchte meine Versandkosten nach Anzahl gekaufter Artikel einstellen. Beispiel: 1-10 Stk. = 1.50 11-40 Stk = 2.70 ab 41 Stk. = 7.50 Kann man das irgendwie leicht einrichten? (Version 4.0.14) Danke vielmals für eure Hilfe! Link to comment Share on other sites More sharing options...
creativo Posted June 16, 2011 Report Share Posted June 16, 2011 Hast Du schon Versandkosten angelegt? Welche Berechnungsgrundlage hast Du ausgewählt? Link to comment Share on other sites More sharing options...
cs24com Posted June 16, 2011 Report Share Posted June 16, 2011 Hi, die Stückzahl - VK werden wie folgt berechnet: Stück x Preis pro Stck --> z.B. 1Stck x 1,00€ -> Gesamtpreis = 1 Stck x 1,00€ = 1,00€ Bei 2 Stück funktioniert die Sache, so wie ich denke, dass du es wünscht, nicht mehr, denn: 2 Stck - Preis pro Stck = z.B. 1,00€ -> Gesamtpreis = 2 Stck x 1,00€ = 2,00€ D.h. der Stückpreis müsste angepasst werden, zu: 2 Stck - Preis pro Stck = z.B. 0,50€ -> Gesamtpreis = 2 Stck x 0,50€ = 1,00€ 3 Stck - Preis pro Stck = z.B. 0,33€ -> Gesamtpreis = 3 Stck x 0,33€ = 1,00€ ... Du müsstest also für jedes Stück einen neuen Versandpreis anlegen, oder wenn es gleiche Artikel sind, evtl. Verpackungseinheiten anbieten, oder gleich nach Gewicht gehen. Link to comment Share on other sites More sharing options...
haeuselmann Posted June 17, 2011 Author Report Share Posted June 17, 2011 Danke für deine Antwort. Aber da bin ich ja Monate dran Die Idee mit dem Gewicht ist nicht mal so schlecht. Wenn ich für jeden Artikel, 1 Kilogramm einstelle, kann man es über das Gewicht lösen. Suuuuper, Danke für den Tipp!! Link to comment Share on other sites More sharing options...
cs24com Posted June 17, 2011 Report Share Posted June 17, 2011 Danke für die Blumen:) Link to comment Share on other sites More sharing options...
creativo Posted June 17, 2011 Report Share Posted June 17, 2011 Was ist denn mit der Berechnungsgrundlage "Artikel"? Link to comment Share on other sites More sharing options...
cs24com Posted June 17, 2011 Report Share Posted June 17, 2011 @creativo Es stehen doch nur ITEM, PRICE und WEIGHT zur Auswahl, oder? Und Item = Stück -- siehe oben. Link to comment Share on other sites More sharing options...
SGerry Posted December 2, 2013 Report Share Posted December 2, 2013 Echt merkwürdig und schlecht, dass sowas nicht geht. Wenn man auf das Gewicht angewiesen ist, gehts schon nichtmehr. Ausserdem sind Felder für andere Zwecke missbrauchen auch immer schlecht. Man kann sich selbst einfach diese Erweiterung machen, indem man den Code erweitert. Ich hoffe, dass das für viele eine Zwischenlösung ist, bis Veyton soweit ist, das standardmäßig zu können: /xtFramework/classes/class.shipping.php Ab ca Zeile 240 Erweitern: if($value['shipping_type']=='package'){ $value = $this->_filterPackage($value); } Dann in die selbe Datei eine neue Funktion, z.B. ab etwa Zeile 556 /** * Filter shipping array for cart packages * * @param mixed $data */ public function _filterPackage($data){ global $xtPlugin; ($plugin_code = $xtPlugin->PluginCode('class.shipping.php:_filterPackage_top')) ? eval($plugin_code) : false; if(isset($plugin_return_value)) return $plugin_return_value; if(!is_data($data)) return false; if(!is_data($data['costs'])) return false; $new_cost=array(); $check_content = array(); $check_content = $data['costs']; while (list ($key, $value) = each($check_content)) { if(($this->count >= $value['shipping_type_value_from'] && $this->count <= $value['shipping_type_value_to']) || ($value['shipping_type_value_to']==0 && $value['shipping_type_value_from']==0)){ if($value['shipping_allowed']=='1'){ $new_cost[] = $value; }else{ unset($new_cost); unset($data); break; } } } $data['costs'] = $new_cost; $data_count = count($data['costs']); if($data_count==0 || !$data_count){ unset($data); } ($plugin_code = $xtPlugin->PluginCode('class.shipping.php:_filterPackage_bottom')) ? eval($plugin_code) : false; return $data; } Dann etwa ab Zeile 788 zu den anderen Beautyfiers: if ($methods['shipping_type'] == 'package') { $data[$key]['costs'][$val]['shipping_type_value_from'] = round($arr['shipping_type_value_from'],0); $data[$key]['costs'][$val]['shipping_type_value_to'] = round($arr['shipping_type_value_to'],0); } Jetzt muss noch im Backend das Dropdown erweitert werden. Einfache Möglichkeit ist, dies nachträglich zu machen. /xtAdmin/DropdownData.php etwa ab Zeile 73 den folgendes case muss dann so erweitert sein: case "conf_shippingtype": $result = $dropdown->getShippingType(); $result = array_merge($result, array(array("id" => "package", "name" => "package"))); break; Hoffe, dass dies für viele eine akzeptable Zwischenlösung ist. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.