Überbleibende Platzhalter %%invoice_number%% etc. entfernen

Manchmal kann es passieren, dass nicht alle Platzhalter wie z.B. %%invoice_number%% ersetzt werden. Das ist zum Beispiel dann der Fall, wenn nicht für alle Bestellungen tatsächlich auch Rechnungen erstellt werden.

Über folgendes Snippet lassen sich diese Platzhalter dann entfernen. Wichtig ist hier, dass eine niedrige Filter-Priorität gewählt wird, damit das Snippet als allerletztes ausgeführt wird und sozusagen die "Besenrunde" ist.

add_filter( 'wcdtvfe_create_export_file_after_preprocessing', array( new self(), 'remove_unnecessary_invoices_numbers' ), 20, 2);

function remove_unnecessary_invoices_numbers( $accounting_record ) {

    foreach( $accounting_record as $key => &$value ) {
        if( gettype( $value) == "string" ) {
            $value = str_replace( "%%ref_inv_number%%", "", $value);
            $value = str_replace( "%%invoice_number%%", "", $value);
            $value = str_replace( "%%refund_number%%", "", $value);
        }
    }

    return $accounting_record;
}

Sie haben Fragen oder möchten ein Angebot anfordern?

Jetzt Kontakt aufnehmen
crosslist