zusammenfassung bestellung auf allen seiten checkout

Thema wurde von ff-webdesigner, 12. August 2021 erstellt.

  1. ff-webdesigner

    ff-webdesigner Erfahrener Benutzer

    Registriert seit:
    22. Januar 2014
    Beiträge:
    418
    Danke erhalten:
    35
    Danke vergeben:
    53
    hallo beisammen,

    gambio gibt auf der letzten seite checkout checkout_confirmation.php eine schöne zusammenfassung der bestellsummen aus:

    Zusammenfassung

    Warenwert: 795,48 €
    Lieferkosten: 0,00 €
    inkl. 19% MwSt.: 127,01 €
    Summe netto: 668,47 €
    Gesamtsumme: 795,48 €

    Wie bekomme ich die auf ALLE seiten des checkouts?

    habe bereits probiert z.b. checkout_payment.html unter honyeygrid theme anzupassen - ausgabe bringt jedoch keinerlei variablen, nur leere html struktur.
     
  2. Moritz (Gambio)

    Moritz (Gambio) Administrator

    Registriert seit:
    26. April 2011
    Beiträge:
    5.786
    Danke erhalten:
    2.692
    Danke vergeben:
    903
    Die ganze Berechnung findet auf den anderen Checkout-Seiten nicht statt, so dass die Daten einfach nicht zur Verfügung stehen. Das ist also ein größeres Unterfangen und nicht mal eben programmiert und hier erklärt.
     
  3. ff-webdesigner

    ff-webdesigner Erfahrener Benutzer

    Registriert seit:
    22. Januar 2014
    Beiträge:
    418
    Danke erhalten:
    35
    Danke vergeben:
    53
    ja dachte ich mir. einige smarty vars hinterlegen in x view.inc.php dateien und dann dort ausgeben und stylen. ist leider unumstösslicher wunsch bei einem grösseren projekt. wenn jemand sowas programmiert hat freue ich mich das unendlich, denn bei kalkulation ging ich fäschlicherweise davon aus dass die entsprechende smarty vars auf allen checkout seiten zur verfügung stehen.

    alternative herangehensweise wäre mittels jquery ab wk die komplette box in post var zu übertragen. und wieder einzufügen; aber dann müsste man auch preise für versand manuell update. höllen aufwand...
     
  4. WinHelp GmbH

    WinHelp GmbH Erfahrener Benutzer

    Registriert seit:
    2. April 2019
    Beiträge:
    79
    Danke erhalten:
    26
    Danke vergeben:
    20
    Hallo,

    ohne jetzt mehr über die Details zu wissen.

    Ich nehme an du möchtest die Box am Ende jeder Seite einfügen.

    Dann überlade die ContentViews aller Checkout-Seiten und setze die Variablen die du für das Template brauchst. Wenn ich mich richtig erinnere, steht die Order auf allen Checkout-Seiten mittels $_GLOBALS['order'] zur Verfügung. Darüber kannst du dir dann die Totals abholen und entsprechend setzen.

    Anschließend überlade die Templates und füge über einen include die cart_order_preview_total.html ein (Siehe cart_order_preview.html wie das geht)

    Mal eben schnell ist das nicht erledigt
     
  5. ff-webdesigner

    ff-webdesigner Erfahrener Benutzer

    Registriert seit:
    22. Januar 2014
    Beiträge:
    418
    Danke erhalten:
    35
    Danke vergeben:
    53
    danke für den tipp! in smarty wirft php $_GLOBALS in checkout_shipping.html schon mal nichts aus. welche dateien würdest du überladen?
     
  6. WinHelp GmbH

    WinHelp GmbH Erfahrener Benutzer

    Registriert seit:
    2. April 2019
    Beiträge:
    79
    Danke erhalten:
    26
    Danke vergeben:
    20
    Ich würde den Zugriff auf die Order nicht im Template machen. Zudem hab ich mich verschrieben, der Zugriff lautet $GLOBALS und nicht $_GLOBALS.

    Ich würde zunächst die ContentViews überladen:

    Für Themes:
    CheckoutShippingThemeContentView
    CheckoutPaymentThemeContentView

    Für Templates
    CheckoutShippingContentView
    CheckoutPaymentContentView

    Dort überlädst du die die prepare_data methode, wenn ich dir das erkläre sprengt dies den Rahmen. Aber Gambio hat dazu eine ganz gute Doku: https://developers.gambio.de/tutori...r-php-klassen#Wie wird eine Klasse überladen?


    Am Ende der Methode kannst du dann die Daten zuweisen, sodass diese im Template zur verfügung stehen. Dies geschieht mittels:
    PHP:
    $this->set_content_data('ORDER_TOTALS'$GLOBALS['order']->totals);

    Anschließend kannst du im Template mit Smarty über
    Code:
    {$ORDER_TOTALS}
    darauf zugreifen und die Tabelle rendern.
     
  7. ff-webdesigner

    ff-webdesigner Erfahrener Benutzer

    Registriert seit:
    22. Januar 2014
    Beiträge:
    418
    Danke erhalten:
    35
    Danke vergeben:
    53
    hi nico,

    ganz dickes danke! damit hab ich alles hinbekommen und mit etwas rechenaufgaben dank "falscher" teilwerte gibts jetzt die gesamte zusammenfassung auch auf checkout_shipping und checkout_payment.
     
  8. WinHelp GmbH

    WinHelp GmbH Erfahrener Benutzer

    Registriert seit:
    2. April 2019
    Beiträge:
    79
    Danke erhalten:
    26
    Danke vergeben:
    20
    Kein Problem.

    Ja, die sache mit den summen... Das Problem kenne ich, habe die Erfahrung gemacht das im Checkout die Order nicht immer die MwSt addiert ist. Gerade bei den Versandkosten, obwohl diese im Backend hinterlegt sind und auch richtig ausgewiesen werden. Ich hatte das Problem damals in der CheckoutConfirmationContentControl