Snippets

Snippets

WordPress- und WooCommerce-Snippets: kleine Helfer mit grosser Wirkung

Nicht jede Anpassung braucht ein eigenes Plugin. Oft genügen wenige Zeilen Code, um WooCommerce genau so zu machen, wie Sie es möchten. Hier finden Sie unsere erprobten Snippets: kostenlose zum direkten Kopieren und umfangreichere PRO-Snippets auf rm24.ch.

So bauen Sie ein Snippet ein

  1. Sichern Sie Ihre Website, bevor Sie Code einfügen.
  2. Installieren Sie ein Snippet-Plugin wie «Code Snippets» oder nutzen Sie die functions.php Ihres Child-Themes.
  3. Kopieren Sie den Code, speichern Sie ihn und prüfen Sie die Funktion auf Ihrer Website.

Die kostenlosen Snippets stellen wir unter der GPL-Lizenz zur Verfügung. Die Verwendung erfolgt auf eigene Verantwortung.

Kostenlos

Kostenlose Snippets zum Kopieren

Kostenlos

Produktbilder in Bestell-E-Mails

Zeigt in den WooCommerce-E-Mails (Bestellbestätigung, Rechnung, Admin-Benachrichtigung) zu jedem Artikel ein Produktbild im Format 150 × 100 px.

Code anzeigen
/**
 * Produktbilder in WooCommerce-Bestell-E-Mails anzeigen (150 x 100 px)
 */
add_filter( 'woocommerce_email_order_items_args', function ( $args ) {
	$args['show_image'] = true;
	$args['image_size'] = array( 150, 100 );
	return $args;
} );

add_filter( 'woocommerce_email_styles', function ( $css ) {
	$css .= '
		.order_item td img {
			border: 1px solid #e2e8f0 !important;
			border-radius: 4px !important;
			vertical-align: middle !important;
			margin-right: 12px !important;
			max-width: 150px !important;
			height: auto !important;
		}';
	return $css;
} );

Kostenlos

Grössere Produktbilder in der Artikelübersicht (Backend)

Vergrössert die kleinen Vorschaubilder in der Produktliste im Backend auf 100 × 66 px. Artikel lassen sich so auf einen Blick erkennen.

Code anzeigen
/**
 * Produktbilder in der WooCommerce-Produktliste (Backend) auf 100 x 66 px vergrössern
 */
add_action( 'admin_head', function () {
	$screen = function_exists( 'get_current_screen' ) ? get_current_screen() : null;
	if ( ! $screen || 'edit-product' !== $screen->id ) {
		return;
	}
	echo '<style>
		table.wp-list-table .column-thumb { width: 115px !important; text-align: center !important; }
		table.wp-list-table td.column-thumb img {
			width: 100px !important; height: 66px !important;
			max-width: 100px !important; max-height: 66px !important;
			object-fit: contain !important; border: 1px solid #e2e8f0 !important;
			border-radius: 4px !important; display: block !important; margin: 0 auto !important;
		}
	</style>';
} );

Kostenlos

Produktanzahl bei Kategorien ausblenden

Entfernt die Zahl in Klammern hinter den Kategorienamen im Shop, z. B. «Reinigungsmittel (48)».

Code anzeigen
/**
 * Produktanzahl hinter Kategorienamen im Shop ausblenden
 */
add_filter( 'woocommerce_subcategory_count_html', '__return_false' );

Kostenlos

«Mehrwertsteuer» zu «MwSt.» abkürzen

Ersetzt im Warenkorb und im Checkout das lange Wort «Mehrwertsteuer» durch die in der Schweiz übliche Abkürzung «MwSt.».

Code anzeigen
/**
 * «Mehrwertsteuer» im Warenkorb und Checkout zu «MwSt.» abkürzen
 */
add_filter( 'gettext', function ( $translated, $text, $domain ) {
	if ( 'woocommerce' === $domain && false !== strpos( $translated, 'Mehrwertsteuer' ) ) {
		$translated = str_replace( 'Mehrwertsteuer', 'MwSt.', $translated );
	}
	return $translated;
}, 20, 3 );

Kostenlos

Freundlicher Text statt «Lieferrückstand»

Ersetzt den Hinweis «Lieferrückstand» bei nachbestellbaren Artikeln durch «Wird für Sie bestellt».

Code anzeigen
/**
 * «Lieferrückstand» durch «Wird für Sie bestellt» ersetzen
 */
add_filter( 'gettext', function ( $translated, $text, $domain ) {
	if ( ! is_admin() && in_array( $text, array( 'On backorder', 'Auf Lieferrückstand', 'Lieferrückstand' ), true ) ) {
		return 'Wird für Sie bestellt';
	}
	return $translated;
}, 20, 3 );

Kostenlos

Bilder automatisch als WebP speichern

Wandelt hochgeladene JPG- und PNG-Bilder beim Erstellen der Bildgrössen automatisch in das platzsparende WebP-Format um (Qualität 82 %).

Code anzeigen
/**
 * Hochgeladene Bilder automatisch als WebP speichern
 */
add_filter( 'image_editor_output_format', function ( $formats ) {
	$formats['image/jpeg'] = 'image/webp';
	$formats['image/png']  = 'image/webp';
	return $formats;
} );

add_filter( 'wp_editor_set_quality', function ( $quality, $mime_type ) {
	return ( 'image/webp' === $mime_type ) ? 82 : $quality;
}, 10, 2 );

Kostenlos

Editor der Produktbeschreibung auf 500 px begrenzen

Verhindert, dass der klassische Editor bei langen Produktbeschreibungen endlos wächst. Der Schreibbereich bleibt 500 px hoch und lässt sich scrollen.

Code anzeigen
/**
 * Editor der Produktbeschreibung auf 500 px Höhe begrenzen
 */
add_filter( 'tiny_mce_before_init', function ( $init, $editor_id ) {
	if ( 'content' === $editor_id && 'product' === get_post_type() ) {
		$init['wp_autoresize_on'] = false;
		$init['height']           = 500;
		$init['min_height']       = 500;
	}
	return $init;
}, 10, 2 );

add_action( 'admin_head', function () {
	global $post_type;
	if ( 'product' !== $post_type ) {
		return;
	}
	echo '<style>
		#postdivrich #content_ifr { height: 500px !important; min-height: 500px !important; max-height: 500px !important; }
		#postdivrich textarea#content { height: 500px !important; max-height: 500px !important; overflow-y: auto !important; }
	</style>';
} );

Kostenlos

Kein Gratisversand für schwere Ware

Schliesst Produkte bestimmter Versandklassen (z. B. Spedition) vom kostenlosen Versand aus. Die Slugs der Versandklassen passen Sie im Code an.

Code anzeigen
/**
 * Kostenlosen Versand für bestimmte Versandklassen ausschliessen
 * Slugs der Versandklassen unten anpassen.
 */
function rm24_excluded_shipping_classes() {
	return array( 'spedition', 'post-schwer' );
}

function rm24_package_has_excluded_class( $package ) {
	if ( empty( $package['contents'] ) || ! is_array( $package['contents'] ) ) {
		return false;
	}
	foreach ( $package['contents'] as $item ) {
		if ( in_array( $item['data']->get_shipping_class(), rm24_excluded_shipping_classes(), true ) ) {
			return true;
		}
	}
	return false;
}

add_filter( 'woocommerce_shipping_free_shipping_is_available', function ( $is_available, $package ) {
	return ( $is_available && ! rm24_package_has_excluded_class( $package ) );
}, 99, 2 );

add_filter( 'woocommerce_package_rates', function ( $rates, $package ) {
	if ( rm24_package_has_excluded_class( $package ) ) {
		foreach ( $rates as $rate_id => $rate ) {
			if ( 'free_shipping' === $rate->method_id ) {
				unset( $rates[ $rate_id ] );
			}
		}
	}
	return $rates;
}, 5, 2 );

Kostenlos

Sitemap-Fehler durch Leerzeichen beheben

Behebt den bekannten Fehler «XML declaration allowed only at the start», wenn ein Plugin oder Theme vor der Sitemap ungewollt Leerzeichen ausgibt.

Code anzeigen
/**
 * Ungewollte Ausgaben vor XML-Sitemaps entfernen
 */
add_action( 'init', function () {
	$uri = isset( $_SERVER['REQUEST_URI'] ) ? (string) wp_unslash( $_SERVER['REQUEST_URI'] ) : '';
	if ( preg_match( '#sitemap[^/]*\.(xml|xsl)#i', $uri ) && ob_get_level() > 0 ) {
		ob_clean();
	}
}, 1 );

PRO

PRO-Snippets auf rm24.ch

Umfangreichere Erweiterungen mit Einstellungen im Backend. Sie beziehen sie im Shop auf rm24.ch – mit Lizenz und Updates.

PRO

Staffelpreise mit Live-Tabelle

Mengenrabatte pro Produkt, Live-Tabelle auf der Produktseite und automatische Rabattierung im Warenkorb.

Auf rm24.ch ansehen →

PRO

Doppelpreis inkl. & exkl. MwSt.

Zeigt jeden Preis inklusive und exklusive MwSt. – ohne Umschalter und kompatibel mit Seiten-Cache.

Auf rm24.ch ansehen →

PRO

VOC, vRG & Sonderzuschläge

Schweizer Lenkungsabgabe (VOC), vorgezogene Recyclinggebühr (vRG) und Zuschläge sauber unter dem Preis ausweisen.

Auf rm24.ch ansehen →

PRO

Einkaufspreis & Gewinn-Kalkulator

Einkaufspreise pro Produkt erfassen und den Gewinn je Artikel und Bestellung berechnen.

Auf rm24.ch ansehen →

PRO

Kassensystem (POS)

Schlankes Kassensystem im WooCommerce-Backend mit Zeilen- und Warenkorb-Rabatt, Staffelpreisen und Belegdruck.

Auf rm24.ch ansehen →

PRO

Filtersystem für die Seitenleiste

Filter nach Hersteller-Logos, Preis und technischen Merkmalen – schnell dank Zwischenspeicher.

Auf rm24.ch ansehen →

PRO

Massenbearbeitung für Produkte

Kategorien, Notizen, Staffelpreise und weitere Felder für viele Produkte gleichzeitig ändern.

Auf rm24.ch ansehen →

PRO

PDF-Katalog-Generator

Erstellt druckfertige Produktkataloge als PDF direkt aus Ihrem Shop.

Auf rm24.ch ansehen →

PRO

Schlanke Wunschliste

Herz-Button, Wunschlisten-Seite und Zähler im Menü – ohne schweres Zusatz-Plugin.

Auf rm24.ch ansehen →

PRO

Verknüpfte Produkte mit Bildvorschau

Upsells und Cross-Sells visuell zuweisen, auch für viele Produkte gleichzeitig.

Auf rm24.ch ansehen →

PRO

Checkout-Felder & Zusatzfelder

Felder im Checkout anpassen, ergänzen und in die PDF-Belege übernehmen.

Auf rm24.ch ansehen →

PRO

EAN-13-Generator

Erzeugt gültige interne EAN-13-Nummern mit Prüfziffer für Produkte und Varianten.

Auf rm24.ch ansehen →

PRO

Produktnotizen intern & für Kunden

Interne Hinweise für Ihr Team und sichtbare Hinweise für Kundinnen und Kunden – auch in der Schnellbearbeitung.

Auf rm24.ch ansehen →

PRO

Praxis-Tipp / Experten-Kommentar

Eine hervorgehobene Box mit Ihrem Fachwissen auf der Produktseite.

Auf rm24.ch ansehen →

PRO

Hersteller- & Produktsortierung

Bestimmt die Reihenfolge im Shop nach Hersteller und Produkttyp – Highlights zuerst, Zubehör am Schluss.

Auf rm24.ch ansehen →

PRO

Neuheiten der letzten 30 Tage

Eine automatische Neuheiten-Seite, gegliedert nach Kategorien.

Auf rm24.ch ansehen →

PRO

Obere & untere Kategorietexte

Visueller Editor für Texte über und unter der Produktliste in Kategorien und Marken.

Auf rm24.ch ansehen →

PRO

Ampel-Lageranzeige

Zeigt den Lagerbestand in der Produktübersicht als farbige Ampel mit Stückzahl.

Auf rm24.ch ansehen →

FAQ

Häufige Fragen

Was ist ein Snippet?

Ein Snippet ist ein kurzes Stück PHP-Code, das WordPress oder WooCommerce um eine einzelne Funktion ergänzt oder ein Verhalten anpasst – ohne ein komplettes Plugin zu installieren.

Wie baue ich ein Snippet ein?

Am sichersten mit einem Snippet-Plugin wie «Code Snippets». Alternativ fügen Sie den Code in die functions.php eines Child-Themes ein. Erstellen Sie vorher immer eine Sicherung Ihrer Website.

Was ist der Unterschied zwischen kostenlosen und PRO-Snippets?

Kostenlose Snippets sind kurz und können direkt kopiert werden. PRO-Snippets sind umfangreicher, enthalten Einstellungen im Backend und werden über rm24.ch mit Lizenz bezogen.

Wann ist ein Plugin besser als ein Snippet?

Sobald eine Funktion Einstellungen, Übersetzungen oder regelmässige Updates braucht, ist ein Plugin die bessere Wahl. Wir beraten Sie gerne, welche Lösung für Ihren Fall passt.

Kontakt

Sprechen wir über Ihr Projekt

Rufen Sie uns an oder schreiben Sie uns eine E-Mail. Sie erreichen direkt die Menschen, die Ihr Plugin, Ihre Website oder Ihre Software umsetzen.

Agentur Roth
c/o SIAX GmbH
Oberrieterstrasse 55
9450 Altstätten, Schweiz

Erprobte Code-Snippets für WordPress und WooCommerce: kostenlose Snippets zum Kopieren und umfangreiche PRO-Snippets auf rm24.ch.