Heim >Backend-Entwicklung >PHP-Tutorial >Wie zeige ich den Lagerstatus für Produktvarianten im WooCommerce-Dropdown an?

Wie zeige ich den Lagerstatus für Produktvarianten im WooCommerce-Dropdown an?

Linda Hamilton
Linda HamiltonOriginal
2024-10-30 09:40:02762Durchsuche

How to Display Stock Status for Product Variations in WooCommerce Dropdown?

So fügen Sie den Variationsbestandsstatus zum WooCommerce-Produktvariations-Dropdown hinzu

Problem:

WooCommerce zeigt den Lagerstatus für einzelne Produktvarianten nicht in der Dropdown-Liste an. Dies kann es für Kunden schwierig machen, zu bestimmen, welche Variationen verfügbar sind.

Lösung:

Um den Variationsbestandsstatus zur Dropdown-Liste hinzuzufügen, können Sie die Funktion wc_dropdown_variation_attribute_options in ändern Ihre WooCommerce-Installation. Diese Funktion generiert den HTML-Code, der im Dropdown-Menü angezeigt wird.

Code:

<code class="php">add_filter( 'woocommerce_dropdown_variation_attribute_options_html', 'show_stock_status_in_dropdown', 10, 2 );
function show_stock_status_in_dropdown( $html, $args ) {
    // Get the product and attribute.
    $product = $args['product'];
    $attribute = $args['attribute'];

    // Get the variations for the product.
    $variations = $product->get_available_variations();

    // Loop through the variations and get the stock status for each one.
    foreach ( $variations as $variation ) {
        // Get the stock status.
        $stock_status = $variation['is_in_stock'] ? 'In Stock' : 'Out of Stock';

        // Append the stock status to the HTML.
        $html .= '<option value="' . esc_attr( $variation['variation_id'] ) . '" ' . selected( $args['selected'], $variation['variation_id'], false ) . '>' . esc_html( apply_filters( 'woocommerce_variation_option_name', $variation['attributes'][ $attribute ] ) ) . ' - (' . esc_html( $stock_status ) . ')</option>';
    }

    return $html;
}</code>

Erklärung:

  • Die Funktion wc_dropdown_variation_attribute_options ist mit dem Filter woocommerce_dropdown_variation_attribute_options_html verknüpft.
  • Die Funktion benötigt zwei Argumente: den HTML-Code, der im Dropdown-Menü angezeigt wird, und eine Reihe von Argumenten, die die Produkt- und Attributinformationen enthalten.
  • Die Funktion durchläuft die Variationen für das Produkt und ruft den Lagerstatus für jede einzelne ab.
  • Der Lagerstatus wird an den HTML-Code angehängt, dem der Name des Variationsattributs vorangestellt wird.
  • Der geänderte HTML-Code wird zurückgegeben und im Dropdown-Menü angezeigt.

Das obige ist der detaillierte Inhalt vonWie zeige ich den Lagerstatus für Produktvarianten im WooCommerce-Dropdown an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn