Wie viele andere Shopsysteme, hat WooCommerce nur 1 Feld für Straße und Hausnummer. Erfahrungsgemäß vergessen einige Kunden immer wieder die Eingabe der Hausnummer, was zu Retouren bei nachgeschalteten Versandservices führt. Das folgende Script prüft im WooCommerce Checkout die Eingabe der Hausnummer im Feld “Straße” und gibt eine Fehlermeldung aus, wenn diese fehlt:

add_filter( 'woocommerce_default_address_fields' , 'mmx_override_street_field' );

function mmx_override_street_field( $fields ) {
     $fields['address_1']['label'] = "Straßenname und <b>Hausnummer</b>";
     return $fields;
}

add_action('woocommerce_checkout_process', 'mmx_validate_street');
 
function mmx_validate_street()
{
    global $woocommerce;
 
    if(isset($_POST['billing_address_1']) and $_POST['billing_address_1'] != '')
    {
        if (!preg_match('/([0-9]+)/Uis', $_POST['billing_address_1']))
        {
            if(function_exists('wc_add_notice'))
                wc_add_notice( __('Bitte Hausnummer im Feld Stra&szlig;e eintragen'), 'error' );
            else
                $woocommerce->add_error( __('Bitte Hausnummer im Feld Stra&szlig;e eintragen') );
        }
    }
}