hoyo2003 Posted April 8, 2009 Report Share Posted April 8, 2009 Hallo. Ich habe 2 Probleme mit der Versandart. Leider konnte ich durch die Suche nicht das finden was ich suche. Wenn ich Selbstabholung aktiviere dann wird dies immer als Standard Versandart gewählt. Ich möchte aber lieber die Deutsche Post als Standard setzten. Wenn dieses Problem gelöst wäre dann würden gleich 2 Fragezeichen über meinem Kopf verschwinden. Vielleicht kennt jemand die php datei die ich da ändern muss. Danke schonmal. MfG Tony Link to comment Share on other sites More sharing options...
bri Posted April 8, 2009 Report Share Posted April 8, 2009 Hallo Tony, in der Datei checkout_shipping.php wird die Funktion $shipping_modules->cheapest() aufgerufen. Die wird's wohl sein, da Selbstabholung wahrscheinlich billiger ist als DP. Die Funktion selbst findest Du in includes/classes/shipping.php Herzliche Grüße Inge Link to comment Share on other sites More sharing options...
hoyo2003 Posted April 8, 2009 Author Report Share Posted April 8, 2009 Ja das habe ich jetzt mittlerweile deaktiviert. Also sucht der nicht mehr das billigste raus. Wir suchen aber eine Lösung das die DP erstmal gewählt ist... somit als Standard definiert... Link to comment Share on other sites More sharing options...
bri Posted April 8, 2009 Report Share Posted April 8, 2009 Dann würde ich die Funktion ändern, indem die Abfrage nicht den Preis berücksichtigt, sondern DP raussucht und zurückgibt. Link to comment Share on other sites More sharing options...
hoyo2003 Posted April 8, 2009 Author Report Share Posted April 8, 2009 also das blind machen wieder raus und dann z.b. $cheapest = false; $size = sizeof($rates); for ($i=0; $i<$size; $i++) { if (is_array($cheapest)) { if ($rates[$i]['dp'] < $cheapest['dp']) { $cheapest = $rates[$i]; } } else { $cheapest = $rates[$i]; } } return $cheapest; dann so wenn ich dich richtig verstehe?!?! Link to comment Share on other sites More sharing options...
bri Posted April 8, 2009 Report Share Posted April 8, 2009 blind machen raus ist OK. Und dann ersetze in der Funktion die Zeile if ($rates[$i]['cost'] < $cheapest['cost']) { durch if ($rates[$i]['id'] == 'dp_dp' ) { Dann sollte es klappen. Link to comment Share on other sites More sharing options...
hoyo2003 Posted April 8, 2009 Author Report Share Posted April 8, 2009 Danke für deinen tip aber es geht immernoch nicht. Link to comment Share on other sites More sharing options...
bri Posted April 8, 2009 Report Share Posted April 8, 2009 Was passiert? Wird garnichts markiert? Wird die Funktion $shipping_modules->cheapest() in der Datei checkout_shipping.php aufgerufen? Poste mal die gesamte Funktion cheapest. Ich habs bei mir ausprobiert. Da klappte es. Nachtrag: Damit ich die Änderung sehen konnte, musste ich mich übrigens ausloggen und neu einloggen. Ansonsten wurde die vorherige Auswahl in der Session gespeichert. Ein einfacher Reload der Seite funktioniert nicht. Link to comment Share on other sites More sharing options...
hoyo2003 Posted April 9, 2009 Author Report Share Posted April 9, 2009 ja jetzt geht es... man sollte auch so schlau sein und die änderung dann speichern... coole sache danke dir inge ich wünsche dir ein schönes osterfest gruss Tony Link to comment Share on other sites More sharing options...
bri Posted April 9, 2009 Report Share Posted April 9, 2009 Fein. Dir auch ein schönes Osterfest und erholsame Tage ;-) Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.