Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Versandkostenfrei ab Betrag xx anzeigen

    Peter70

    • Neu im Forum
    • Beiträge: 46
    Versandkostenfrei ab Betrag xx anzeigen
    am: 09. April 2011, 06:40:50
    Hallo Forum,

    vor einiger Zeit hatte ich in einem Shop etwas bestellt. Nachdem die Ware in den Einkaufskorb "gelegt" wurde erschien in einer Box der Hinweis:
    Zitat
    Ab 75 Euro Warenwert berechnen wir innerhalb von Deutschland keine Versandkosten.
    Wenn Sie noch Artikel im Wert von xx Euro einkaufen ist dieser Einkauf für Sie Versandkostenfrei!
    Der Betrag XX war der Betrag der mit dann noch fehlte zum versandkostenfreien Einkauf.

    Ich finde so etwas recht verkaufsfördernd - viele werden sich dann wohl noch etwas dazu bestellen um in den Genuss der versandkostenfreien Lieferung zu kommen - jedenfalls nach meiner Einschätzung.

    Leider habe ich hierzu bisher nichts gefunden wie man so etwas umsetzen kann bzw. ob es dafür bereits ein Modul gibt.

    In diesem Shop habe ich das gesehen: (Falls ich den Link hier nicht reinstellen darf - bitte löschen)

    www.naturprodukte-mv-shop.de

    Seht Ihr Lösungsmöglichkeiten bzw. wie ist Eure Meinung ?

    Viele Grüße
    Peter



    Linkback: https://www.modified-shop.org/forum/index.php?topic=12249.0
    Werbung / Banner buchen

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Versandkostenfrei ab Betrag xx anzeigen
    Antwort #1 am: 09. April 2011, 14:25:48
    Es gibt dafür zwei Wege:
    1.) Du aktivierst unter "Module" -> "Versandart" das Versandmodul "Versandkostenfrei (freeamount)"
    2.) Du bearbeitest unter "Module" -> "Zusammenfassung" das Modul "Versandkosten (ot_shipping)" und stellst "Versandkostenfrei erlauben" auf "true"

    Das steht doch aber bestimmt auch im Anwenderhandbuch. ;-)

    Grüße

    Torsten

    Peter70

    • Neu im Forum
    • Beiträge: 46
    Versandkostenfrei ab Betrag xx anzeigen
    Antwort #2 am: 09. April 2011, 15:33:07
    Hallo Torsten,

    die Module kenne ich. Auch habe ich hier im Forum schon gelesen, da ich im Handbuch nichts gefunden hatte - sorry.

    Wo kann ich das denn bei den beiden Modulen einstellen ?

    Wie bekomme ich denn die Info "wieviel der Kunde noch kaufen muss, damit er in den Genuss des Versandkostenfreien Versandes kommt" auf die Seite ? Mit einer Box ?

    Unten mal das Beispiel aus dem o.g. (siehe meinen ersten Beitrag) genannten Shop.

    Hoffe das geht wirklich so problemlos. Würde es nämlich sehr "verkaufsfördernd" finden.

    Danke
    Peter

      [ Für Gäste sind keine Dateianhänge sichtbar ]

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Versandkostenfrei ab Betrag xx anzeigen
    Antwort #3 am: 09. April 2011, 15:55:54
    Das ist standardmäßig nicht integriert und muss programmiert werden. Evtl. Gibt es da aber auch schon ein fertiges Modul.

    Grüße

    Torsten

    heinze

    • Neu im Forum
    • Beiträge: 2
    • Geschlecht:
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #4 am: 01. Juni 2012, 09:13:50
    Hallo,

    Ist das immer noch relevant, ich habe gesehen, dass der Thread schon ein Jahr alt ist.
    Ich habe so was bei mir nämlich implementiert, das ist etwas Coding in verschiedenen Dateien und das CSS anpassen, allerdings nicht als Modul.

    Gruß Heinz

    Simon

    • Viel Schreiber
    • Beiträge: 1.369
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #5 am: 24. Oktober 2012, 00:32:10
    Lösungen werden immer gebraucht, wäre gut wenn du es reinstellst.

     :thx:

    johony

    • Neu im Forum
    • Beiträge: 16
    • Geschlecht:
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #6 am: 24. Oktober 2012, 02:35:36
    Servus,

    kann dir eine lösung für eine Variable Versandkostenanzeige im productlisting, productinfo und warenkorb anbieten.
    Das Variable beschränkt sich auf "zzg. Versandkosten" welches beim erreichen des Mindestbestellwertes für versandkostenfreie Lieferung auf "Versandkostenfrei innerhalb D" wechselt.

    -Texte sind über die lang_german.conf definiert
    -Mindestbestellwert ist Fix im Code, was eigentlich schlecht ist. Sollte aber kein Problem sein das aus der Config auszulesen, entweder von ot_shipping oder freeamount. Den wert für Versandkostenfrei muss man wenn ichs mir nicht zu kompliziert gemacht hab in beide eintragen.

    Das du eine Anzeige im Warenkorb hast "noch xx € dann Versand kostenlos" sollte kein großen Problem sein. Musst ja nur den Warenkorbwert von Mindestbestellwert abziehen ...

    gruß
    Hannes

    Simon

    • Viel Schreiber
    • Beiträge: 1.369
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #7 am: 24. Oktober 2012, 03:16:13
    Hallo Hannes,

    vielen Dank für deine Lösung.

    Gerade das "bestellen Sie noch für xx Euro bis versandfrei" ist das Problem.
    Ich habe es in der order_details_cart.php umgesetzt, doch dort steht der Netto-Warenwert nicht zur Verfügung.

    Es gibt nur die Variable $total. Je nachdem ob man ein Firmenkunden oder Endkunde ist, ist dieser Wert im Shop brutto oder netto. Im Shop ausgewiesen als Zwischensumme. Zusätzlich ist von der Zwischensumme aber auch ein Rabatt bereits abgezogen.
    $total ist damit für nicht geeignet, da man mit mehreren If-Abfragen arbeiten müsste, ob Netto-Kunden oder Brutto-Kunde und ob mit Rabatt oder ohne Rabatt und dann alles dazurechnen bzw. abziehen.

    Das ist auch in diesem Modul falsch:
    http://www.modified-shop.org/forum/index.php?topic=12426.msg119707#msg119707

    johony

    • Neu im Forum
    • Beiträge: 16
    • Geschlecht:
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #8 am: 24. Oktober 2012, 13:36:39
    Servus,

    EDIT: das war daneben, $total macht das schon automatisch ... also in bezug auf Brutto oder Netto ist das unnötig ...

    EDIT 2: was möchstest du denn genau ? das die Rabatte beim anzeigen des Restbetrags ignoriert werden ?

    Gerade das "bestellen Sie noch für xx Euro bis versandfrei" ist das Problem.
    Ich habe es in der order_details_cart.php umgesetzt, doch dort steht der Netto-Warenwert nicht zur Verfügung.

    Hab jetz mal eine eigene $total Variable erstellt ($my_total), die in der for-Schleife in der order_details_cart.php die preise der einzelnen Artikel aufsummiert. Ob Kunde Gast oder Händler ist wird berücksichtigt

    Vor der for-Schleife, ganz am anfang der datei einfügen
    Code: PHP  [Auswählen]
    $my_total = 0;

    Innerhalb for-Schleife, nach ca. Zeile 70 ($module_content[$i] = array ('PRODUCTS_NAME' => $products[$i]['name'].$mark_stock, .... )

    Code: PHP  [Auswählen]
    if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1)
                    $my_total += $products[$i]['quantity'] * $xtPrice->xtcRemoveTax($products[$i]['price'],$products[$i]['tax']);
            else   
                    $my_total += $products[$i]['quantity'] * $products[$i]['price'];
     

    In if (SHOW_SHIPPING == 'true') { ...
    Code: PHP  [Auswählen]
    $module_smarty->assign('NEED_TO_SHIPPING_FREE', (49 - $my_total) > 0 ? round(49 - $my_total, $xtPrice->currencies[$xtPrice->actualCurr]['decimal_places']) : 'false');
            $module_smarty->assign('MY_TOTAL', round($my_total, $xtPrice->currencies[$xtPrice->actualCurr]['decimal_places']));
     

    das wäre zumindest mal ein ansatz ...

    Simon

    • Viel Schreiber
    • Beiträge: 1.369
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #9 am: 24. Oktober 2012, 17:59:31

    Hallo Hannes,

    vielen Dank für deinen Code.
    Das Problem mit der $total ist, bei Nettokunden ist der Wert netto und bei Bruttokunden ist der Wert brutto.
    Die Versandfreigrenze ist in der Admin aber netto eingegeben, einen Steuersatz kann man dort nicht angeben.
    Ich habe deshalb nur die Lösung gesehen mit den Nettowerten die Versandfreigrenze zu vergleichen, damit ich nicht je nach Kundengruppe eine andere Berechnung aufstellen muss.
    Der Nettowert muss auch der reine Warenwert sein ohne Rabatte.

    Hatte deshalb gestern in der includes\classes\shopping_cart.php die Funktion calculate() auszugsweise dupliziert und auf Netto umgeschrieben. Dazu muss nur der Parameter $product['products_tax_class_id'] mit 0 ersetzt werden, damit die Berechnung sicher richtig ist und ich nicht mehrere If-Abfragen benötige.

    Ich werde das noch einmal prüfen, ob ich alles bedacht habe und auch deine Lösung testen. Evtl. ist es damit einfacher.

    Hier noch die Funktion:
    Code: PHP  [Auswählen]
      // BOF - Netto-Warenwert berechnen
      function calculate_netto() {
        global $xtPrice;
        $this->total_netto = 0;
        $this->weight = 0;
        $this->tax = array ();
        if (!is_array($this->contents)) {
          return 0;
        }

        reset($this->contents);
        while (list ($products_id,) = each($this->contents)) {
          $qty = $this->contents[$products_id]['qty'];

          // products price
          $product_query = xtc_db_query("select products_id, products_price, products_discount_allowed, products_tax_class_id, products_weight from ".TABLE_PRODUCTS." where products_id='".xtc_get_prid($products_id)."'");
          if ($product = xtc_db_fetch_array($product_query)) {
            $products_price = $xtPrice->xtcGetPrice($product['products_id'], $format = false, $qty, 0, $product['products_price']);
            $this->total_netto += $products_price * $qty;
            $this->weight += ($qty * $product['products_weight']);

            // attributes price
            $attribute_price = 0;
            if (isset ($this->contents[$products_id]['attributes'])) {
              reset($this->contents[$products_id]['attributes']);
              while (list ($option, $value) = each($this->contents[$products_id]['attributes'])) {
                $values = $xtPrice->xtcGetOptionPrice($product['products_id'], $option, $value);
                $this->weight += $values['weight'] * $qty;
                $this->total += $values['price'] * $qty;
                $attribute_price += $values['price'];
              }
            }
          }
        }
      }
      // EOF - Netto-Warenwert berechnen
     

    martin63

    • Fördermitglied
    • Beiträge: 41
    • Geschlecht:
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #10 am: 24. Oktober 2012, 19:47:26
    Es gibt eine Lösung vo Gunnart (ist schon eine Weile her):
    http://www.gunnart.de/tipps-und-tricks/xtcommerce/lieferung-versandkostenfrei-freeshippingdata-fuer-xtcommerce/

    Damit kann der Restbetrag bis zur versankostenfreien Lieferung angezeigt werden. Wie das mit brutto oder nette bei  $total funktioniert, habe ich allerdings noch nicht probiert.

    lg Martin

    Simon

    • Viel Schreiber
    • Beiträge: 1.369
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #11 am: 24. Oktober 2012, 20:04:43

    Hallo Martin,

    da dachte ich, ich kenne schon alle Lösungen von Gunnart, doch da habe ich wohl eine übersehen.
    Hatte auch das Forum hier durchsucht. Vielen Dank für den Tipp.

    Gunnart kennt jedenfalls die Problematik mit Brutto und Netto, wodurch sich falsche Versandfreigrenzen ergeben können (Bruttokunden früher als Nettokunden).
    Er schreibt:
    Zitat
    An dieser Stelle noch der Hinweis: Bei “freeamount” rechnet xt:Commerce standardmäßig immer vom Brutto-Warenwert aus, bei “ot_shipping” hängt’s davon ab, ob die jeweilige Kundengruppe die Preise mit oder ohne Steuern sehen soll.

    Jetzt ist es spannend, ob seine Lösung auch mit "ot_shipping" funktioniert.
    Denn das Modul "freeamount" hat den großen Nachteil, dass der Kunde versandfrei selbst auswählen muss und der Shop nicht automatisch auf versandfrei umschaltet.

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #12 am: 19. November 2015, 14:04:29
    Die Lösung von Gunnart ist ja einfach genial! Völlig ohne rumgebastel im Core!

    Ich habe jetzt nur noch ein Problem:

    in der /lang/lang_german.conf steht das:
    Code: PHP  [Auswählen]
    text_to_freeamount = 'Ihnen fehlen noch %s für eine versandkostenfreie Lieferung!'

    Also habe ich jetzt im Template das zur Verfügung:
    Code: PHP  [Auswählen]
    {#text_to_freeamount#} // 'Ihnen fehlen noch %s für eine versandkostenfreie Lieferung!'
    {$FREE_SHIPPING_MISSING} // '7,15 EUR'
     

    Wie bekomme ich jetzt da ein sprint_f hin  :-?

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #13 am: 19. November 2015, 14:12:56
    habs selbst rausgefunden .... beim sprint_f den Unterstrich weglassen:
    Code: PHP  [Auswählen]
    {#text_to_freeamount#|sprintf:$FREE_SHIPPING_MISSING}

    web0null

    • Experte
    • Beiträge: 1.998
    Re: Versandkostenfrei ab Betrag xx anzeigen
    Antwort #14 am: 19. November 2015, 14:22:52
    Zitat
    beim sprint_f den Unterstrich weglassen
    Auch in php schreibt man es ohne Unterstrich.
    Du kannst jede "bekannte" Funktion so verwenden in Smarty.
    Gruß
    Modulshop - Eine große Auswahl an neuen und hilfreichen Modulen für die modified eCommerce Shopsoftware