Versandkostenfrei?

Thema wurde von Roman Yakovlev, 4. August 2011 erstellt.

  1. Roman Yakovlev

    Roman Yakovlev Mitglied

    Registriert seit:
    24. Juli 2011
    Beiträge:
    20
    Danke erhalten:
    0
    Danke vergeben:
    1
    Hallo an alle Forenmitglieder,

    Bin grade beim shop-basteln und komme nicht weiter (brauche euren Rat!)

    1. Bei erstem Anhang sehen Sie, dass der Shop bieten 2 Versandarten an: Versand gegen Gebühr und Versandkostenfrei (ich werde ab 75 euro kostenfrei verschicken!) - Die Frage ist- Wie kann ich das so machen, dass es kein Auswahl gibt - sondern wird im Hintergrund entschieden. Komisch überhaupt, dass diese als Option überhaupt da ist!
    2. Desweiteren verstehe ich die Kalkulation von einem Rabatt nicht - bin der Meinung mache ich was falsch oder der Shop! Einstellunge sind: 5% Skonto bei Vorkasse ab 100euro, 2% bis 100%.
    3. Wo entferne ich das hessliche "Versand nach DE: (1 x 0 kg)"?

    Vielen Dank im Voraus!
     

    Anhänge:

  2. balou...sagt "Auf Wiedersehn"

    balou...sagt "Auf Wiedersehn" Erfahrener Benutzer

    Registriert seit:
    7. Juni 2011
    Beiträge:
    1.766
    Danke erhalten:
    374
    Danke vergeben:
    134
    hallo,

    zu 1) da warte ich immer noch auf eine antwort von gambio
    zu 2) ist unter module/zusammenfassung/ot_payment der rabatt von 5% hinterlegt?
    zu 3) da warte ich immer noch auf eine antwort von gambio
     
  3. Roman Yakovlev

    Roman Yakovlev Mitglied

    Registriert seit:
    24. Juli 2011
    Beiträge:
    20
    Danke erhalten:
    0
    Danke vergeben:
    1
    zu 1- gleich funktioniert auch Versandpauschale.. Also die 2 Versandkostenfrei lässt sich nicht alleine ausradieren...
    2. klar ist hinterlegt, quke nur wie es berechnet. ich mein 5% von 100 ist doch 5 - oder bin ich nicht ganz dicht?
    3. ich quke mal in den sql texten und in Dateien eventuell ist es irgendwo dort hinterlegt.
     
  4. Roman Yakovlev

    Roman Yakovlev Mitglied

    Registriert seit:
    24. Juli 2011
    Beiträge:
    20
    Danke erhalten:
    0
    Danke vergeben:
    1
    #4 Roman Yakovlev, 5. August 2011
    Zuletzt bearbeitet: 5. August 2011
    So, fangen wir mal an:
    Text "Versand nach" - sql nix verloren. bitte alle nach Datei z.B. /lang/german/modules/shipping/dhlgermany.php - Zeile 27
    Code:
    define('MODULE_SHIPPING_DHLGERMANY_TEXT_WAY', 'Versand nach');
    Weiter - Datei:
    Datei dhlgermany.php - /includes/modules/shipping/dhlgermany.php
    Zeite 96-112
    Code:
          if ($dest_zone == 0) {
            $error = true;
          } else {
            $shipping = -1;
            $dhlgermany_cost = constant('MODULE_SHIPPING_DHLGERMANY_COST_' . $i);
            $dhlgermany_table = split("[:,]" , $dhlgermany_cost);
            for ($i=0; $i<sizeof($dhlgermany_table); $i+=2) {
              if ($shipping_weight <= $dhlgermany_table[$i]) {
                $shipping = $dhlgermany_table[$i+1];
                if ($dest_plz_in) {
                  $shipping_method = MODULE_SHIPPING_DHLGERMANY_TEXT_WAY . ' ' . $dest_country . ': ';
                } else {
                  $shipping_method = MODULE_SHIPPING_DHLGERMANY_TEXT_WAY . ' ' . $dest_country . ': ';            
                }
                break;
              }
            }
    
    Jetzt ist es jedem überlassen, was und wie er damit machen kann. Fals jemand das ganz weg haben möchte (Ich meine nur die Auswahlliste) - Bescheid geben.

    Weitere Punkte - später.
     
  5. Roman Yakovlev

    Roman Yakovlev Mitglied

    Registriert seit:
    24. Juli 2011
    Beiträge:
    20
    Danke erhalten:
    0
    Danke vergeben:
    1
    #5 Roman Yakovlev, 5. August 2011
    Zuletzt bearbeitet: 5. August 2011
    So, habe noch diese 1*0kg rausgenommen! Datei dhlgermany.php von MODULES!
    Zeile 139-151 sieht bei mir jetzt so aus:
    PHP:
      if ($dest_plz_in) {
            
    $this->quotes = array('id' => $this->code,
                                  
    'module' => MODULE_SHIPPING_DHLGERMANY_TEXT_TITLE,
                                  
    'methods' => array(array('id' => $this->code,
                                                           
    'title' => $shipping_method.' (' $shipping_cost_normal_formatted ' '.$tax_text.')'.' '.MODULE_SHIPPING_DHLGERMANY_POSTCODE_INFO_TEXT.': ('.$shipping_cost_extra_formatted.' '.$tax_text.')',
                                                           
    'cost' => $shipping_cost $shipping_num_boxes)));
          } else {
            
    $this->quotes = array('id' => $this->code,
                                  
    'module' => MODULE_SHIPPING_DHLGERMANY_TEXT_TITLE,
                                  
    'methods' => array(array('id' => $this->code,
                                                           
    'title' => $shipping_method '',
                                                           
    'cost' => $shipping_cost $shipping_num_boxes)));
          }
     
  6. Roman Yakovlev

    Roman Yakovlev Mitglied

    Registriert seit:
    24. Juli 2011
    Beiträge:
    20
    Danke erhalten:
    0
    Danke vergeben:
    1
    Weist jemand, wo ich die Kalkulation von Rabatt finde?
     
  7. Wolkenseifen

    Wolkenseifen Erfahrener Benutzer

    Registriert seit:
    14. Juli 2011
    Beiträge:
    186
    Danke erhalten:
    15
    Danke vergeben:
    14
    Was meinst Du genau?
    Du kannst in den Artikeldetails selber, also in der Bearbeitung angeben, wieviel Rabatt Du auf den jeweiligen Artikel höchstens gewährst.
    In den Kundengruppen kannst Du festlegen, welche Gruppe wieviel Rabatt erhalten soll.

    Gruß
    Anne
     
  8. Roman Yakovlev

    Roman Yakovlev Mitglied

    Registriert seit:
    24. Juli 2011
    Beiträge:
    20
    Danke erhalten:
    0
    Danke vergeben:
    1
    Hallo Anne, hier geht es nicht um Rabattzuweisung! Sondern Rabatt auf ganze Bestellung bei Vorkasse. Das ist hier: ZUSAMMENFASSUNG -

    Vorkasse Rabatt (ot_payment)!!!
     
  9. Roman Yakovlev

    Roman Yakovlev Mitglied

    Registriert seit:
    24. Juli 2011
    Beiträge:
    20
    Danke erhalten:
    0
    Danke vergeben:
    1
    und ich meinte halt - Kalkulation in php code! ;)
     
  10. mausi

    mausi Erfahrener Benutzer

    Registriert seit:
    25. November 2011
    Beiträge:
    57
    Danke erhalten:
    0
    Danke vergeben:
    13
    Hallo ich stehe ebenfalls vor dem Problem 1)
    Hat sich da mittlerweile was ergeben?

    lg
    Elke
     
  11. S t e f a n

    S t e f a n Erfahrener Benutzer

    Registriert seit:
    26. September 2011
    Beiträge:
    730
    Danke erhalten:
    94
    Danke vergeben:
    76
    Jetzt fühle ich mich als Hesse aber schon etwas beleidigt... :-(
     
  12. Petra

    Petra G-WARD 2013/14/15

    Registriert seit:
    27. August 2011
    Beiträge:
    6.998
    Danke erhalten:
    1.225
    Danke vergeben:
    227
    Zu Problem 1 haben wir ein Ticket laufen, das mit 60 Euronen ins Budget schlägt.Wenn das hier ein allgemeines Problem ist und noch weitere Anfragen bei Gambio vorliegen, komme ich mir jetzt ziemlich veräppelt vor.
     
  13. start2dream

    start2dream Erfahrener Benutzer

    Registriert seit:
    24. Januar 2012
    Beiträge:
    59
    Danke erhalten:
    2
    Danke vergeben:
    6
    Anderes Problem:

    Bei einem reinen Downloadshop gibt es keine Versandkosten. Also möchte ich den Kunden auch nicht mit dem Thema behelligen. Allerdings muss ich scheinbar immer das Modul "versandkostenfrei" installiert haben (sonst geht die Bestellung bei Abfrage der Versandart nicht weiter).

    Eigentlich möchte ich den Kunden aber beim Klick auf "Kasse" direkt zu den Bezahlmethoden bringen, nicht erst auf die Zwischenseite "Versand". Denn ich brauche weder eine "Versandadresse" vom Kunden, noch soll er durch eine "Versandart" verwirrt werden.
     
  14. mausi

    mausi Erfahrener Benutzer

    Registriert seit:
    25. November 2011
    Beiträge:
    57
    Danke erhalten:
    0
    Danke vergeben:
    13
    #14 mausi, 27. Februar 2012
    Zuletzt bearbeitet: 27. Februar 2012
    Hallo
    ich habe das Problem 1) für mich gelöst. Ich poste hier meine (persönliche) Mitschrift zur Lösung.Damit hoffe ich wird mein Vorgehen auch besser ersichtlich.
    Dies ist eine Art Workaround und ich denke mir, Leute, die sich besser auskennen finden vielleicht einen anderen (sinnvolleren, effizienteren) Weg.
    Ich nehme Verbesserungsvorschäge gerne an und berichte über Testläufe.
    Wenn getestet und gewünscht kann man dies auch gerne in Tutorials verschieben.



    VERSANDKOSTENBUG
    ----------------------------------

    Problem
    Auch wennn der Betrag erreicht is,t mit dem die Versandkosten entfallen, wird bei Versandart checkout_shipping.html die Option Pauschale Versandkosten
    angezeigt.

    Betreffende Dateien
    /public_html/shop/templates/EyeCandy/module/checkout_shipping.html
    /public_html/shop/templates/EyeCandy/module/checkout_shipping_block.html
    /public_html/shop/includes/classes/shipping.php


    /public_html/shop/includes/modules/shipping/ *.* insbesondere freeamount.php?

    /public_html/testshop/shop/checkout_shipping.php

    Vermuteter Fehler
    Abfrage in checkout_shipping_block.html
    {if $FREE_SHIPPING && !$module_content}

    Annahme $FREE_SHIPPING ok, aber modul content wird trotzem mit pauschale versandkosten geladen.
    --> Annahme falsch, denn {debug} sagt: module_content gefüllt und $FREE_SHIPPING nicht gesetzt






    ERKENNTNIS

    Das eigentlich dafür zuständige ist in checkout_shipping.php Zeile 226. dieser Fall tritt nie ein.
    in 237 sieht man die klasse free_free.
    mit erzwingen ($free_shipping = true) erkennt man das die Variablen nicht definiert sind auch warscheinlich im Backend gar nicht
    definiert werden können.

    ANSATZ

    Wir begnügen uns mit mit folgendem.
    Auf maximal höchster ebene lesen wir
    A) {$module_data.module} ->> checkout_shipping_block.html oder
    B) $module_smarty->assign('module_content', $quotes); ->>zeile 299 checkout_shipping.php
    aus und verändern das Array wie folgt:
    WENN im Array id="freeamount" und unter id="freeamount" der Error NICHT gesetzt ist
    DANN löschen wir alles andere
    übergeben der schnittstelle unser verändertes array




    Was ich noch nicht verstehe: woher weiß er wann versandkostenfrei einen Radiobutton kriegt oder nicht?



    Nachtrag:

    --> jetzt weiß ichs: in checkout_shipping.php zeile 272
    Radiobutton ist checked wegen folgendem:
    $checked = (($quotes[$i]['id'].'_'.$quotes[$i]['methods'][$j]['id'] == $_SESSION['shipping']['id']) ? true : false);
    das heißt in $_SESSION['shipping'] wird der versand richtig berechnet mit versandkostenfrei (freeamount NICHT free_free).






    LÖSUNG
    in checkout_shipping.php ab Zeile 296 einfügen (inner halb des else-Zweigs der Abfrage # free shipping or not... und nach dem Zuweisung der module an quotes)

    PHP:
    $onlyfree_quotes = array();
            
    $myfree_shipping 0;
            for (
    $i 0$n sizeof($quotes); $i $n$i ++) 
                if(
    $quotes[$i]['id']=='freeamount')              //strstr??
                    
    if (!isset($quotes[$i]['error']))
                        
    $myfree_shipping 1;
                        
            if (
    $myfree_shipping==1)
                for (
    $i 0$n sizeof($quotes); $i $n$i++)
                    if(
    $quotes[$i]['id']=='freeamount')
                        
    $onlyfree_quotes[0] = $quotes[$i];
                        
            if (
    $myfree_shipping==1)
                
    $module_smarty->assign('module_content'$onlyfree_quotes);
            else
                
    $module_smarty->assign('module_content'$quotes);


        
            
    //$module_smarty->assign('module_content', $quotes); <- Bestehende Zuweisung auskommentiert.
    Alle anderen Variablen (insbesondere die mit free_shipping zusammenhängend verändert werden) werden nicht berührt. Deshalb auch die Verwendung myfree_shipping.

    liebe Grüße
     
  15. Alexander (Gambio)

    Registriert seit:
    22. Juni 2011
    Beiträge:
    7
    Danke erhalten:
    7
    Es gibt im Shop 2 Methoden, um Versandkostenfreie Lieferungen zu realisieren:

    Methode 1: Unter Module - > Versandarten finden Sie das Modul "Versandkostenfrei". In dieses tragen Sie den gewünschten Mindestbestellwert ein. Bis zu diesem Mindestbestellwert gibt das Versandmodul dann eine Meldung aus, dass ab XY Euro der Versand kostenfrei ist. Der Kunde kann dann zwischen normalen Versand und kostenlosem Versand wählen. Dies ist ratsam, wenn Sie auch Selbstabholung anbieten möchten.

    Methode 2: Unter Module - > Zusammenfassung finden Sie das Modul Versandkosten. Wenn Sie dies bearbeiten können Sie versandkostenfreie Lieferungen erlauben und einen Mindestbestellwert eingeben. Anders als beim Versandkostenmodul blendet diese Funktion alle anderen Versandarten aus und informiert den Kunden, dass die Bestellung Versandkostenfrei erfolgt. Wenn Sie Selbstabholung anbieten steht diese dann ebenfalls nicht mehr zur Verfügung.
     
  16. Daniela

    Daniela Erfahrener Benutzer

    Registriert seit:
    28. Oktober 2011
    Beiträge:
    793
    Danke erhalten:
    142
    Danke vergeben:
    110
    Methode 2 ist war ganz nett, aber was ich nicht so toll finde ist, dass, wenn der Betrag für versandkostenfreie Lieferung noch nicht erreicht wurde, dann kein Hinweis darauf kommt, dass ab € .... versandkostenfrei wäre. Würde das noch angezeigt, wäre es perfekt.
     
  17. Waldfussel

    Waldfussel Erfahrener Benutzer

    Registriert seit:
    25. August 2011
    Beiträge:
    153
    Danke erhalten:
    2
    Danke vergeben:
    19
    Aber Methode 1 führt doch ständig zu unzufriedenen KundInnen, weil alle, die ihre Bestellung abschließen davon ausgehen, dass über dem versandkostenfreien Betrag die Versandkosten automatisch wegfallen. Dass sie selbst ein Häkchen bei "versandkostenfrei" setzen müssen, ist extrem ungewöhnlich.

    Kann man das nicht "sauberer" lösen und trotzdem Selbstabholung anbieten?
     
  18. Daniela

    Daniela Erfahrener Benutzer

    Registriert seit:
    28. Oktober 2011
    Beiträge:
    793
    Danke erhalten:
    142
    Danke vergeben:
    110
    Methode1: Ich finde es auch nicht gut, wenn man versandkostenfrei erreicht hat und das dann noch extra anklicken muss. Macht beim Kunden kein so gutes Bild.
    Methode2: Ist da schon besser, aber wie ich oben schon geschrieben habe, fehlt hier eben der Hinweis, dass ab €... es versandkostenfrei wäre.

    Gibt es hier keine Lösung?
    Ideal wäre Methode1: aber wenn es versandkostenfrei erreicht, dass dann nur noch versandkostenfrei stehen bleibt, dann kennt sich der Kunde auch aus und ist nicht so verwirrt.

    Anscheinend haben ja mehrere das Problem.
     
  19. Waldfussel

    Waldfussel Erfahrener Benutzer

    Registriert seit:
    25. August 2011
    Beiträge:
    153
    Danke erhalten:
    2
    Danke vergeben:
    19
    Ja, aber es sollte eben trotzdem noch die Möglichkeit der Selbstabholung geben. Also, "alles andere weg" ist auch blöd.
     
  20. Dennis (MotivMonster.de)

    Dennis (MotivMonster.de) G-WARD 2013/14/15/16

    Registriert seit:
    22. September 2011
    Beiträge:
    30.984
    Danke erhalten:
    6.097
    Danke vergeben:
    1.079
    Beruf:
    Mann für alles :)
    Ort:
    Weilburg
    Ein Vorschlag