Mit Hilfe der Community habe ich das gewünschte Verhalten mit variablen Produkten erfolgreich erhalten, aber ich kann es nicht an einfachen Produkten duplizieren.
function woocommerce_get_custom_availability( $data, $product ) {
switch( $product->stock_status ) {
case 'readytoship':
$data = array( 'availability' => __( 'In Stock','woocommerce' ), 'class' => 'ready-to-ship' );
break;
case 'outofstock':
$data = array( 'availability' => __( 'Call for Quote', 'woocommerce' ), 'class' => 'out-of-stock' );
break;
case 'onbackorder':
$data = array( 'availability' => __( 'On Backorder', 'woocommerce' ), 'class' => 'onbackorder' );
break;
}
return $data;
}
add_action('woocommerce_get_availability', 'woocommerce_get_custom_availability', 10, 2);
add_filter( 'woocommerce_available_variation', 'variation_out_of_stock_show_form', 10, 3 );
function variation_out_of_stock_show_form( $data, $product, $variation ) {
if( ! $data['is_in_stock'] )
{
$data['availability_html'] = '';
$data['availability_html'] .= 'Please contact us for a quote and availability.';
$data['availability_html'] .= do_shortcode('[gravityform id="10" title="false" description="false" ajax="true"]'); // Replace with your own contact form shortcode
$data['availability_html'] .= '';
}
return $data;
}
add_action( 'woocommerce_single_product_summary', 'hide_add_to_cart_button_variable_product', 1, 0 );
function hide_add_to_cart_button_variable_product() {
// Removing add to cart button and quantities only
remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );
}
Aber alle Variationen darüber, die ich für ein einfaches Produkt ausprobiert habe, sowohl in der functions.php-Datei als auch in /woocommerce/templates/single-product/add-to-cart/Simple.php, geben Sie einfach das Standardverhalten (oder erstellen Sie einen kritischen Fehler).>
add_filter( 'woocommerce_available_variation', 'variation_out_of_stock_show_form', 10, 3 ); function variation_out_of_stock_show_form( $data, $product, $variation ) { if( ! $data['is_in_stock'] ) { $data['availability_html'] = ''; $data['availability_html'] .= 'Please contact us for a quote and availability.'; $data['availability_html'] .= do_shortcode('[gravityform id="10" title="false" description="false" ajax="true"]'); // Replace with your own contact form shortcode $data['availability_html'] .= ''; } return $data; }
add_action( 'woocommerce_single_product_summary', 'hide_add_to_cart_button_variable_product', 1, 0 ); function hide_add_to_cart_button_variable_product() {
// Removing add to cart button and quantities only remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 ); } [/code] Aber alle Variationen darüber, die ich für ein einfaches Produkt ausprobiert habe, sowohl in der functions.php-Datei als auch in /woocommerce/templates/single-product/add-to-cart/Simple.php, geben Sie einfach das Standardverhalten (oder erstellen Sie einen kritischen Fehler).>
Ich habe auf der Website flipkart.com nach einem mobilen Produkt vom Typ „Asus Zenfone 5“ gesucht. Die Suche zeigt viele Produkte an. Ich habe das erste Produkt ausgewählt und in den Warenkorb...
Ich möchte Kunden nur ein Produkt aus einer definierten Kategorie kaufen lassen. Alle Produkte kosten 0 (Null). Es wird nur die Liefergebühr erhoben. Dieser Code schlägt jedoch nicht für die...
Ich verwende Tags zum Filtern der Produktanzeige und gruppiere sie in bestimmte Gruppen. Gleichzeitig zeige ich aus SEO-Zwecken Produkt-Tags auf Produktseiten an, sodass ich am Ende eine Menge Tags...
Ich erstelle eine Online-Einladungswebsite mit Elementor, WooCommerce und benutzerdefinierten Beitragstypen. Hier ist das Problem: Ich möchte eine WooCommerce-Produktseite (entworfen mit Elementor)...