WordPress

Allgemein

Technik

Design

Konzept

WordPress Plugins

Interessantes

Vermarktung

Themen

Font / Schriften

Social Media

Youtube

eCommerce

Gemischtes

Kolumne

Webinar

Blog Archiv

Kurse / Webinare

Meine nächste Webinare / Kurse

WooCommerce: Lagerbestand für einzelne Produkte anzeigen

von | Mai 30, 2022 | eCommerce | 3 Kommentare

Schlagwörter: functions.php - WooCommerce

Wie ihr wisst hat man in WooCommerce die Möglichkeit bei den Produkte eine Lagerverwaltung zu aktivieren. Sobald man diese Aktiviert hat, kann man WooCommerce sagen, dass von diesem Produkt noch x im Lager sind.

Ich kann dann auch einen Schwellenwert definieren, wird die Anzahl Produkt da unterschritten, dann bekommt der Admin des Shops eine eMail und weiss nun, dass bei diesem Produkt zu wenig Produkte an Lager sind und er nachbestellen oder nachproduzieren muss.

Unter ≪Produkte≫ -> ≪Lagerverwaltung≫ kann man dann eine Funktion aktivieren und die Anzahl Produkte werden dann bei allen Produkten angezeigt. Eine sehr nützliche Funktion.

Das Problem

Heute wurde ich gefragt, ob ich eine Möglichkeit kenne, wo man diese Anzeige für einzelne Produkte aktivieren kann und wo man auch den Text anpassen kann. In diesem Fall verkauft einer für ein Konzern Sitzplätze und möchte das ganze über einen WooCommerce Shop organisieren.

Code

Wenn ihr diesen Code nehmen wollt, dann kopiert ihn raus und setzt ihn dann in die functions.php Datei in eurem Child-Theme ein und dann könnt ihr ihn noch anpassen.

1
2
3
4
5
6
7
8
9
10
11
/* Sitzplatz anzeige */
 
add_filter( 'woocommerce_get_availability_text', 'cb_custome_sitzplatzanzeige', 99, 2 );
 
function cb_custome_sitzplatzanzeige( $availability, $product ) {
    if ( $product->get_id() == 18 ) {
        $stock = $product->get_stock_quantity();
        if ( $product->is_in_stock() && $product->managing_stock() ) $availability = 'Noch freie Sitzplätze: ' . $stock;
        return $availability;
    }
}

Anpassen

Nachdem ihr diesen Code rauskopiert habt, dann müsst ihr ihn noch anpassen. Zuerst einmal seht ihr da in der 3. Zeile die Zahl 18 stehen. Diese Zahl ist die Produkt-ID des Produkts wo ihr es angezeigt haben möchtet. Also sucht eure ID raus und ersetzt diese dann da wo die 18 steht.

Ebenfalls könnt ihr den Text noch ersetzen der bei diesem Produkt erscheinen wird. „Noch freie Sitzplätze: “ könnt ihr so anpassen wie ihr es wollt. Schaut einfach das ihr die ‚ Zeichen in ruhe lässt und kein ` oder “ so daraus macht, dann gibts eine Fehlermeldung.

Wenn ihr nach der Zahl wieder einen Text wollt dann müsst ihr alles nach dem = Zeichen anpassen mit zb

1
'Noch ' . $stock . ' Sitzplätze frei';

Das heisst dann „Noch 12 Sitzplätze frei“….

Ihr könnt natürlich auch mehrere Produkte damit ausrüsten, dann müsst ihr einfach den Code duplizieren und aus cb_custome_sitzplatzanzeige eine cb_custome_sitzplatzanzeige1 und dann cb_custome_sitzplatzanzeige2 machen. Denkt aber daran dieses Wort bei add_filter und bei function anzupassen 🙂

Ich denke ihr könnt nun selbständig das Ganze anpassen und damit rumspielen.





3 Kommentare

  1. Wolfgang Wagner

    Vielen Dank, genau danach habe ich gesucht 🙂

    Viele Grüße
    Wolfgang

    Antworten
    • Eric-Oliver Mächler

      ich freue mich immer wenn ich helfen konnte 🙂

      Antworten
  2. Anna

    Danke für deinen tollen Beitrag Eric, hat mir geholfen 🙂 Mach bitte weiter so mit deiner Arbeit hier. <3

    Antworten

Antworten auf Anna Antworten abbrechen

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