Code Snippets

Die folgenden Code Schnipsel kopiert ihr bitte einfach in die functions.php eures aktiven WordPress Themes.

WooCommerce Javascript und CSS nur auf Shop Seiten laden

Da WooCommerce seine CSS und JavaScript Dateien auf jeder Seite eurer Homepage lädt, kann es zu erheblichen Performance-Einbußen kommen. Das folgende Snippet sorgt dafür, dass diese Dateien nur auf den tatsächlichen Shop Seiten integriert werden:

if (!function_exists( 'trd_remove_woocommerce_styles' ) ) :

function trd_remove_woocommerce_styles() {

    if ( function_exists( 'is_woocommerce' ) ) {

        if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() && ! is_account_page() ) {          
            wp_dequeue_style( 'woocommerce-layout' );
            wp_dequeue_style( 'woocommerce-smallscreen' );
            wp_dequeue_style( 'woocommerce-general' );
            wp_dequeue_style( 'evolution-woostyles' );
            wp_dequeue_script( 'wc_price_slider' );
            wp_dequeue_script( 'wc-single-product' );
            wp_dequeue_script( 'wc-add-to-cart' );
            wp_dequeue_script( 'wc-cart-fragments' );
            wp_dequeue_script( 'wc-checkout' );
            wp_dequeue_script( 'wc-add-to-cart-variation' );
            wp_dequeue_script( 'wc-single-product' );
            wp_dequeue_script( 'wc-cart' );
            wp_dequeue_script( 'wc-chosen' );
            wp_dequeue_script( 'woocommerce' );
            wp_dequeue_script( 'prettyPhoto' );
            wp_dequeue_script( 'prettyPhoto-init' );
            wp_dequeue_script( 'jquery-blockui' );
            wp_dequeue_script( 'jquery-placeholder' );
            wp_dequeue_script( 'fancybox' );
            wp_dequeue_script( 'jqueryui' );
        }
    }
}
add_action( 'wp_enqueue_scripts', 'trd_remove_woocommerce_styles', 99 );
endif;

In den Warenkorb Button direkt zur Kasse leiten

Mit diesem Snippet könnt ihr Nutzer beim Klick auf den Warenkorb Button direkt zur Kasse zu leiten.

add_filter ('add_to_cart_redirect', 'trd_redirect_to_checkout');

function trd_redirect_to_checkout() {
    global $woocommerce;
    $checkout_url = $woocommerce->cart->get_checkout_url();
    return $checkout_url;
}

Freiwillige Angabe der Telefonnummer

Im Bestellvorgang ist die Telefonnummer als Pflichtfeld gekennzeichnet. Um daraus eine freiwillige Angabe zu machen, kann folgender Code genutzt werden:

if (!function_exists( 'trd_woocommerce_phone_optional' ) ) :
function trd_woocommerce_phone_optional( $address_fields ) {
    
    $address_fields['billing_phone']['required'] = false;
    return $address_fields;
}
add_filter( 'woocommerce_billing_fields', 'trd_woocommerce_phone_optional', 10, 1 );
endif;

Bemerkungsfeld im Bestellvorgang entfernen

Erfahrungsgemäß wird das Bemerkungsfeld im WooCommerce Bestellvorgang von den meisten Kunden nicht genutzt. Um Platz im Bestellformular einzusparen, ist es daher eine Überlegung wert, das Feld entsprechend zu deaktivieren.

add_filter( 'woocommerce_enable_order_notes_field', '__return_false' );

Ähnliche Produkte ausblenden

Es sprechen einige Gründe dafür, bei Shops mit kleinem Warenangebot “ähnliche Produkte” auszublenden, da hier die Auswahl scheinbar zufällig zustande kommt.

remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );

Bei Fragen helfen wir euch natürlich gerne weiter.