Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save spirit1977/7b2cbc84747380aed1f5d4b720663523 to your computer and use it in GitHub Desktop.
Save spirit1977/7b2cbc84747380aed1f5d4b720663523 to your computer and use it in GitHub Desktop.
Es ist ärgerlich wenn man eine Bestellung erhält aber der Kunde hat vergessen seine Hausnummer bei der Adresse mit anzugeben. Da entsteht ein zusätzlicher Aufwand für die Nachfrage. Dieses Snippet behebt das Problem und prüft im Bestellvorgang die Adresszeile 1, sowohl Rechnungs- und Lieferadresse, nach einer Nr. Sollte in dem Feld keine Nummer …
// Prüfung bei WooCommerce ob Hausnummer bei der Adresse eingetragen wurde
add_action('woocommerce_checkout_process', 'custom_validation_process');
function custom_validation_process()
{
global $woocommerce;
// Überprüfen, ob PayPal als Zahlungsmethode ausgewählt wurde
if (isset($_POST['payment_method']) && $_POST['payment_method'] === 'paypal') {
return; // Adressvalidierung für PayPal deaktivieren
}
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( __('Haben Sie die Hausnummer bei der Straße vergessen?'), 'error' );
else
$woocommerce->add_error( __('Haben Sie die Hausnummer bei der Straße vergessen?') );
}
}
if(isset($_POST['ship_to_different_address']))
{
if(isset($_POST['shipping_address_1']) and $_POST['shipping_address_1'] != '')
{
if (!preg_match('/([0-9]+)/Uis', $_POST['shipping_address_1']))
{
if(function_exists('wc_add_notice'))
wc_add_notice( __('Haben Sie die Hausnummer bei der Straße vergessen?'), 'error' );
else
$woocommerce->add_error( __('Haben Sie die Hausnummer bei der Straße vergessen?') );
}
}
}
}
// Prüfung bei WooCommerce ob Hausnummer bei der Adresse eingetragen wurde
add_action('woocommerce_checkout_process', 'custom_validation_process');
function custom_validation_process()
{
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( __('Haben Sie die Hausnummer bei der Straße vergessen?'), 'error' );
else
$woocommerce->add_error( __('Haben Sie die Hausnummer bei der Straße vergessen?') );
}
}
if(isset($_POST['ship_to_different_address']))
{
if(isset($_POST['shipping_address_1']) and $_POST['shipping_address_1'] != '')
{
if (!preg_match('/([0-9]+)/Uis', $_POST['shipping_address_1']))
{
if(function_exists('wc_add_notice'))
wc_add_notice( __('Haben Sie die Hausnummer bei der Straße vergessen?'), 'error' );
else
$woocommerce->add_error( __('Haben Sie die Hausnummer bei der Straße vergessen?') );
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment