Videoanleitung
In Woocommerce werden im Kassenbereich zahlreiche Kundenangaben abgefragt, bspw. auch die Anschrift. Möchtest du Felder ausblenden, kannst du das über sogn. Custom Code realisieren.
Dadurch werden weniger Daten abgefragt und der Kunde ist schneller mit seiner Bestellung fertig.
Bitte brücksichtige aber dabei, dass die Kundenanschrift unter bestimmten Umständen auf der Rechnung erscheinen muss und ein Ausblenden deshalb nicht immer sinnvoll ist -bspw. wenn der Rechnungsbetrag über 250 Euro liegt oder das Reverse Charge verfahren angewendet wird.
Der Code wirkt sich ausschließlich auf virtuelle Produkte (also u.a. Onlinekurse) aus. Verkaufst du noch andere (physische) Produkte, werden alle Felder abgefragt.
Im Video zeige ich dir, wie du den Custom Code (findest du unter dem Video) einbinden und ggf. anpassen kannst.
Bestandteile der Videoanleitung:
- Installation eines Plugins zum Einfügen von Custom Code
- Custom Code hinterlegen
- Ggf. Anpassung des Custom Codes
Custom Code
/**
* @snippet Hide Fields if Virtual @ WooCommerce Checkout
* @how-to Get CustomizeWoo.com FREE
* @author Rodolfo Melogli
* @compatible WooCommerce 8
* @community https://businessbloomer.com/club/
*/
add_filter( 'woocommerce_checkout_fields', 'bbloomer_simplify_checkout_virtual' );
function bbloomer_simplify_checkout_virtual( $fields ) {
$only_virtual = true;
foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
// Check if there are non-virtual products
if ( ! $cart_item['data']->is_virtual() ) $only_virtual = false;
}
if ( $only_virtual ) {
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_postcode']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
unset($fields['billing']['billing_phone']);
add_filter( 'woocommerce_enable_order_notes_field', '__return_false' );
}
return $fields;
}