kleine Modifikation : Mindestbestellwert nach PLZ

  • Hallo,
    mein erster Beitrag hier, hoffe, hier bin ich richtig.
    Für den Pizza Shop, den ich betreue, sollte der Mindestbestellwert nach der PLZ gewählt werden.
    Da ich derartiges noch nicht so richtig gefunden habe, hier ein diff gegen die
    components/com_virtuemart/helpers/cart.php
    Nach einem Update der cart.php sollte man das diff wieder "einspielen".


    Funktionsweise:
    Anhand eines Arrays werden die PLZ -> Mindestbestellwert Beziehungen hergestellt.
    Ist eine PLZ im Bestellfeld angegeben, die im Array vorhanden ist, wird der von VM ausgelesene
    Mindestbestellwert "überschrieben". Für alle PLZ die nicht im Array sind, wird der von VM vorgebene
    Mindestbestellwert verwendet.


    Man sollte in dem Array die PLZ -> Mindestbestellwert anpassen und unten den Text ebenso
    anpassen.


    Gruss Torsten


    cart.php.mindestbestellwertnachplz-up.diff.txt

  • Hallo, bin über diesen Artikel hier im Forum gelandet. Gibt es eine Möglichkeit dieses "DIFF" in eine eigene Installation zu integrieren? Bin noch relaitv frisch in dem Thema und bräuchte eine Step für Step Anleitung wenn möglich.

  • Hallo quartz,


    ich gehe mal davon aus, dass Du unter Windows arbeitest.
    Dort würde ich es so machen:
    1. Einen Ordner anlegen, z.B. C:\patching
    2. Lade in diesen Ordner den Patch von oben herunter
    3. Lade per FTP aus Deiner joomla Installation die cart.php (components/com_virtuemart/helpers/cart.php) in denselben Ordner C:\patching herunter
    4. Lade das Windows Kommandozeilenprogramm patch herunter unter Patch for Windows Nun sollte sich die patch.exe auch im Verzeichniss C:\patching befinden
    5. Nun in die Windows Kommadozeile wechseln mittels: Start -> Ausführen -> cmd -> Enter
    6. Jetzt in das Verzeichniss C:\patching wechseln mit z.B. cd C:\patching -> Enter
    7. Nun Aufruf von patch: patch.exe -p1 < cart.php.mindestbestellwertnachplz-up.diff.txt
    8. patch fragt nun, welche Datei gepatcht werden soll: Es ist cart.php
    9. Jetzt sollte dort stehen Hunk succeeded, nun die cart.php im Editor ändern und anpassen, danach Upload
    10. Probieren.



    Gruss Torsten

    Einmal editiert, zuletzt von nethawk () aus folgendem Grund: Rechtschreibfehler

  • Guten Tag Torsten
    Ich habe mir Ihre Mail zu Herzen genommen und schreibe Ihnen Hier im Forum das wie gesagt alle was davon haben.
    Joomla 2.5.18, VM 2.0.26d
    Meine Frage bezüglich cart.php wo genau haben Sie diese Ergänzungen im Code eingefügt und wo schlussendlich wird dies angezeigt im Frontend?
    Gruss Sascha

  • Hallo Sascha,


    bei der cart.php handelt es sich um:
    @version $Id: cart.php 6557 2012-10-17 19:16:22Z Milbo $


    Um zu zeigen, wo der patch in die cart.php Sachen einfügt, anbei die Grafik.
    Dort wo es rot ist, ist ein Modifikation der cart.php.



    Die Anzeige erscheint im Warenkorb, wenn man dort die Bestellung durchführen möchte.
    Gruss Torsten

  • Guten Morgen aller seits zum Valentinstag


    Vielen Dank für deine Hilfe.
    Nun Leider klappt es nicht bei mir. Ich habe den Code erfolgreich an der richtigen Stelle eingefügt, nur sehe dies nirgends im meinen Warenkorb.. Mache ich etwas falsch oder so?

    Gruss Sascha

    Einmal editiert, zuletzt von Surfkiller () aus folgendem Grund: Bilder falsch positioniert

  • Hallo,


    auch wenn der Beitrag schon älter ist muss ich sagen Klasse arbeit! :)
    Allerdings komm ich nicht ganz zurecht damit, immer wenn ich mehr Postleitzahlen einbaue als die bereits vorgegebene Anzahl funktioniert das ganze nicht mehr.
    Was mache ich falsch? Ich erstelle grad eine Seite für einen bekannten der einen Pizzaservice hat.
    Dieser liefert an einige Gebiete, wie kann ich mehr Postleitzahlen einbauen?


    Grüße! :)

  • Hallo an alle,
    Zwar schon lange her aber der Beitrag ist immer noch sehr interessant, ich habe versucht die cart.php von virtuemart 3 zu bearbeiten leider ohne erfolg es funktioniert nicht die ganze seite bleibt einfach stehen und patchen geht auch nicht mehr bei mir warum auch immer bleibt beim patchen einfach stehen. Hoffentlich kann mir einer helfen

  • Hast Du im Backend auch einen Mindestbestellwert definiert ?
    Wenn nicht, dann bitte nachholen und erneut probieren.


    Gruss Torsten


    Bei mir bricht die komplette seite zusammen wenn ich den code einfuge,warum? Hat es evtl. mit der neuen version von virtuemart 3 zutun?

  • Die Seite bricht zusammen, weil Du Code in eine PHP-Seite einfügst, die nicht den gleichen Inhalt hat wie die, für die es gedacht ist.


    Folge doch Milbos Gedanken einmal.


    VirtueMart - Config - Countries (Länder)


    Dort Germany, dahinter steht Staaten. Die Staaten löscht Du raus.


    Dann machst Du neue "Staaten": 45679 linke Stadtecke, 42388 Stadtzentrum, 45333 Watweißichwo.


    Nun gehst Du in die Kundenfelder/Shopperfields, deaktiviere ZIP und Stadt. In Countries gehst Du hinein und setzt unter dem großen Textfeld bei Default die Zahl 81 für Deutschland ein.


    Nun lauf mal eine Bestellung durch, und registrier Dich. Bei der Registrierung kannst Du nun unter Bundesland/Staaten Deine "44666 Unterdorf" auswählen. Das ist nicht schön, deshalb legst Du dafür einen Sprachoverride an. Aus Bundesstaat wird "PLZ - Ort" oder so.


    Dann gehst Du in die Versandmethoden und legst eine "Pizzalieferung bis 10 Euro" an, da trägst Du Deutschland, und "44555 X - Y", Lieferkosten 2 Euro.
    Noch ne Versandmethode "Pizzalieferung bis 15 Euro", Lieferkosten 1 Euro.
    und noch eine "Pizzalieferung über xy Euro, Lieferkosten 0 Euro.


    Die jeweiligen Postleitzahlen, ehemals Bundesländer nimmst Du als Auswahlkriterium.


    Hope it helps
    Stefan

  • Hallo Stefan,
    wenn ich das richtig verstanden habe kann diese Auswahl aber nur einmal bei der Registrierung gemacht werden oder????


    Habe deinen Vorschlag getestet nicht schlecht muss ich sagen, aber ich weiss nicht ob das so richtig ist. Bei mir wird die Versandart in unserem Fall PLZ nur angezeigt wenn der entsprechende Betrag erreicht ist,sonst bleiben die Versandarten unsichtbar, woher soll der Kunde wissen wieviel sein
    Mindestbestellwert für sein Gebiet ist???? ist nicht ganz so Kundenfreundlich es sei denn ich
    habe etwas falsch gemacht?!!!!!

  • Mach doch eine Lieferart "Lieferung unter Mindestbestellwert (Kosten 5,00 Euro)", Beschreibung "Der Mindestbestellwert für Ihre PLZ wurde noch nicht erreicht." Da dann keinen Mindestbetrag rein, dann wird das immer angezeigt.


    Wenn der Betrag erreicht ist, werden beide angezeigt.

  • Hallo nochmal,
    hat super geklappt vielen dank auf diese logik muss man erstmal kommen, nur noch eine kurze frage sur kosmetik kann man die versandarten in einem drop down anzeigen lassen? Weil es viele plz sind und sich dann eine lange liste aufbaut, aber wenn es nicht geht auch nicht schlimm


    PS. Muss allerdings noch etwas mitteilen, mein bekannter fur den ich die seite
    Mache hat mir gerade 3 mindestbestellwerte zugeschickt je nach plz um so weiter die plz desto grosser der mindestbetrag, das passt dann glaube ich wieder nicht mit dem was wir hier so besprochen haben

  • Mach doch eine Lieferart "Lieferung unter Mindestbestellwert (Kosten 5,00 Euro)", Beschreibung "Der Mindestbestellwert für Ihre PLZ wurde noch nicht erreicht." Da dann keinen Mindestbetrag rein, dann wird das immer angezeigt.


    Wenn der Betrag erreicht ist, werden beide angezeigt.


    Aber ein Maximum eingeben, damit sie verschwindet, hmm gibts das? Ich fürchte nicht. und Warum eigentlich ein Mindestbestellwert? Sinnvoller wäre doch, daß der Kunde halt mehr zahlt.


    Ahja und Dropdown sollte über ein css, js ding gehen. Oder eventuell ein Overide. Man kann auch direkt die Postleitzahlen der Versandmethode benutzen