Ankerlink an den Anfang der Seite
alligator 2942846 1920
Generic filters
Filter by Kategorien

Seit WooCommerce 3 sind Produktbilder mit einer Zoom-Funktion versehen die sichtbar wird, sobald man mit der Maus über das Produktbild fährt.

Beispielbild mit Zoomsymbol in Woocommerce
screenshot 2021 08 27 091304

Anleitungen wie man die Zoom-Funktion los wird, beschränken sich meistens auf die Zeile

remove_theme_support( 'wc-product-gallery-zoom' );

die in die functions.php des Themes eingefügt werden soll.

Das funktionierte in der functions.php des Childtheme allerdings nicht, weder als eigene Zeile, noch innerhalb des after_setup_theme-Hooks.

In solchen Fällen findet man die Antwort am schnellsten dort wo die Funktion verwendet wird, der Datei class-wc-frontend-scripts-php in den includes von WooCommerce, die einen Filter anbietet, was so aussieht:

'zoom_enabled' => apply_filters( 'woocommerce_single_product_zoom_enabled', get_theme_support( 'wc-product-gallery-zoom' ) ),

Den Filter anzuwenden führte dann auch zum gewünschten Erfolg. Nachfolgend, wie es funktionierte, die Zoomfunktion loszuwerden:

function kill_the_zoom() {
	remove_theme_support( 'wc-product-gallery-zoom' );
}
add_filter( 'woocommerce_single_product_zoom_enabled', 'kill_the_zoom' );

Oder als Kurzform

add_filter( 'woocommerce_single_product_zoom_enabled', function() {
	remove_theme_support( 'wc-product-gallery-zoom' );
} );

Was bleibt, ist (ggf.) nur noch die Lightbox-Funktion, die bleibt davon unberührt.

'photoswipe_enabled'        => apply_filters( 'woocommerce_single_product_photoswipe_enabled', get_theme_support( 'wc-product-gallery-lightbox' ) ),
screenshot 2021 08 27 091352
add_filter( 'woocommerce_single_product_photoswipe_enabled', 'remove_wc_gallery_lightbox' );
function remove_wc_gallery_lightbox() { 
  remove_theme_support( 'wc-product-gallery-lightbox' );
}

Würde die Lightbox-Funktionalität von WooCommerce entfernt, wäre das Bild immer noch verlinkt und würde von der Produktseite weglotsen (zur Original Bilddatei).

Im Weiteren lässt sich dieser Filter nur auf die WooCommerce-Lightbox anwenden. Es kann aber sein, dass die bereits durch das verwendete Theme ersetzt wurde, oder auch schon gehabt, dass sich zwei Lightboxen öffnen. Dann macht es Sinn, die von WooCommerce mit Hilfe des Filters loszuwerden, und anschließend zu testen was passiert.

3 Antworten zu „WooCommerce Produktbilder-Zoom im Childtheme deaktivieren“

  1. Anika

    Danke, klappt wunderbar.
    Falls jemand darüber stolpern sollte: Auch diese Änderung muss in die functions.php des Child-Themes.

  2. Ewa

    Leider verschwindet nur das Zeigen (Icon Zoom) man kann es trotzdem anklicken

    1. webentwicklerin

      Vermutlich ist noch eine Lightbox aktiv. Das Snippet unterbindet nur die Zoom-Funktion, nicht die Produktlightbox. Ich habe den Beitrag entsprechend ergänzt.

Bitte das Kommentarfeld nicht für Supportanfragen nutzen; hier kann kein Support angeboten werden. Die Angabe von Name oder E-Mail-Adresse ist optional, ein Spitzname wäre trotzdem nett.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Name und E-Mail-Adresse (beides optional, da alle Kommentare moderiert werden) werden dauerhaft gespeichert. Über dieses Formular kann jeder Zeit die Löschung persönlicher Daten oder Kommentare angefordert werden; die Anfrage wird nicht veröffentlicht und nach der Bearbeitung gelöscht. IP-Adressen, die mit Kommentaren gespeichert werden, werden nach zwei Monaten automatisch gelöscht.