1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Wieder mal - Rechnungs - Endbetrag runden

Dieses Thema im Forum "WooCommerce" wurde erstellt von riedere, 3. Dezember 2018.

  1. riedere

    riedere Member

    Registriert seit:
    21. April 2018
    Beiträge:
    7
    Zustimmungen:
    0
    Hello
    Wir haben einen (Software aktuellen) Woocomerce Shop mit Storefront,(noch nicht offiziell aufgeschaltet).
    Das einzige was noch fehlt ist: den Rechnungsendbetrag auf den nächsten 5er oder 10er abrunden.
    Ich habe den Beitrag von nasenbaer von 201x durchgelesen werde aber echt nicht schlau daraus:
    Ich zitiere daraus:
    "Ich würde nicht round verwenden, sondern ceil (oder für geizige Kaufleute floor)
    Code:
    add_filter( 'woocommerce_coupon_get_discount_amount', 'mmx_round_coupon_amount' );
    function mmx_round_coupon_amount( $discount ){
    // round up
    $rounded = ceil( $discount / 0.05 ) * 0.05;
    // round down
    // $rounded = floor( $discount / 0.05 ) * 0.05;
    return $rounded;
    }
    Mit ceil wird der abzuziehende Betrag immer aufgerundet. Aus 22.87 wird 22.90. Der Kunde bekommt etwas mehr Rabatt.
    Mit floor wird der abzuziehende Betrag immer abgerundet. Aus 22.87 wird also 22.85. Der Kunde bekommt also etwas weniger Rabatt.
    "
    Wir haben da keinen Rabatt Coupon etc. Ganz einfach den Endbetrag abrunden.
    In CH ist es üblich gerundet auf 5 Rp zu verrechnen.
    Das muss nicht mal speziell aufgeführt werden, in den AGB kann man dies vermerken und die Probleme sind vom Fenster. Überdies zahlt der Kunde ja weniger, also wird niemand Stress machen.

    Bitte mir ein Muster machen damit ich es einbauen kann.
    Wenn gewünscht sponsore ich etwas.
    Erich
     
  2. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    7.052
    Zustimmungen:
    89
    Code kommt in die functions.php eines Childthemes:

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Code zur freien Verwendung wie gepostet.
     
  3. riedere

    riedere Member

    Registriert seit:
    21. April 2018
    Beiträge:
    7
    Zustimmungen:
    0
    Danke sehr mensmaximus,
    ich baue das gegen Ende Woche ein.
    Erich
     
  4. riedere

    riedere Member

    Registriert seit:
    21. April 2018
    Beiträge:
    7
    Zustimmungen:
    0
    Oh, konnte es von hier aus einbauen...via RDP auf einen Rechner.

    in ..wp-contest/themes/storefront-child/
    ja eine functions.php drin- aber es war nicht viel drin...(soviel das der script direkt nicht aufgerufen werden kann)

    <?php
    // Exit if accessed directly
    if ( !defined( 'ABSPATH' ) ) exit;

    add_filter( 'woocommerce_calculated_total', 'mmx_round_total_amount' );
    function mmx_round_total_amount( $total ) {
    $rounded = floor(($total + 0.000001) * 20) / 20;
    return $rounded;
    }
    ...........
    Leider tut sich nichts - in Richtung runden.
    Muss die Funktion nicht noch irgendwo aufgerufen werden ?
    .......
    Es gibt noch eine ../themes/storefront/functions.php - aber dort steht unten dass man Benutzerspezifischen Code nicht einbauen soll.....
     
  5. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    7.052
    Zustimmungen:
    89
    Es gibt viele Gründe warum die Funktion keine Wirkung zeigt. In einer frischen WooCommerce Installation mit Standrad Theme funktioniert es.
     
  6. riedere

    riedere Member

    Registriert seit:
    21. April 2018
    Beiträge:
    7
    Zustimmungen:
    0
    OK nun geschafft.
    Problem war das bestehende storefront-child.php war in den Plugiuns nicht aufgelistet.
    Nun selbst eines gemacht raufgeladen und aktiviert - funktioniert mit 5er Rundung.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden