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
- Sichern Sie Ihre Website, bevor Sie Code einfügen.
- Installieren Sie ein Snippet-Plugin wie «Code Snippets» oder nutzen Sie die functions.php Ihres Child-Themes.
- 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
«ab CHF» statt Preisspanne
Zeigt bei variablen Produkten in Übersichten «ab CHF 12.50» statt einer Preisspanne. Auf der Produktseite bleibt die volle Spanne sichtbar.
Code anzeigen
/**
* Preisspannen in Übersichten durch «ab CHF …» ersetzen
*/
add_filter( 'woocommerce_format_price_range', function ( $price, $from, $to ) {
if ( ! is_product() || doing_action( 'woocommerce_after_single_product_summary' ) ) {
return sprintf( 'ab %s', wc_price( $from ) );
}
return $price;
}, 10, 3 );
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.
PRO
Doppelpreis inkl. & exkl. MwSt.
Zeigt jeden Preis inklusive und exklusive MwSt. – ohne Umschalter und kompatibel mit Seiten-Cache.
PRO
VOC, vRG & Sonderzuschläge
Schweizer Lenkungsabgabe (VOC), vorgezogene Recyclinggebühr (vRG) und Zuschläge sauber unter dem Preis ausweisen.
PRO
Einkaufspreis & Gewinn-Kalkulator
Einkaufspreise pro Produkt erfassen und den Gewinn je Artikel und Bestellung berechnen.
PRO
Kassensystem (POS)
Schlankes Kassensystem im WooCommerce-Backend mit Zeilen- und Warenkorb-Rabatt, Staffelpreisen und Belegdruck.
PRO
Filtersystem für die Seitenleiste
Filter nach Hersteller-Logos, Preis und technischen Merkmalen – schnell dank Zwischenspeicher.
PRO
Massenbearbeitung für Produkte
Kategorien, Notizen, Staffelpreise und weitere Felder für viele Produkte gleichzeitig ändern.
PRO
PDF-Katalog-Generator
Erstellt druckfertige Produktkataloge als PDF direkt aus Ihrem Shop.
PRO
Schlanke Wunschliste
Herz-Button, Wunschlisten-Seite und Zähler im Menü – ohne schweres Zusatz-Plugin.
PRO
Verknüpfte Produkte mit Bildvorschau
Upsells und Cross-Sells visuell zuweisen, auch für viele Produkte gleichzeitig.
PRO
Checkout-Felder & Zusatzfelder
Felder im Checkout anpassen, ergänzen und in die PDF-Belege übernehmen.
PRO
EAN-13-Generator
Erzeugt gültige interne EAN-13-Nummern mit Prüfziffer für Produkte und Varianten.
PRO
Produktnotizen intern & für Kunden
Interne Hinweise für Ihr Team und sichtbare Hinweise für Kundinnen und Kunden – auch in der Schnellbearbeitung.
PRO
Praxis-Tipp / Experten-Kommentar
Eine hervorgehobene Box mit Ihrem Fachwissen auf der Produktseite.
PRO
Hersteller- & Produktsortierung
Bestimmt die Reihenfolge im Shop nach Hersteller und Produkttyp – Highlights zuerst, Zubehör am Schluss.
PRO
Neuheiten der letzten 30 Tage
Eine automatische Neuheiten-Seite, gegliedert nach Kategorien.
PRO
Obere & untere Kategorietexte
Visueller Editor für Texte über und unter der Produktliste in Kategorien und Marken.
PRO
Ampel-Lageranzeige
Zeigt den Lagerbestand in der Produktübersicht als farbige Ampel mit Stückzahl.
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.