Ersetzen Sie die Taste zur Warenkorben durch ein Kontaktformular, wenn das Produkt in WooCommerce nicht vorrätig istPhp

PHP-Programmierer chatten hier
Anonymous
 Ersetzen Sie die Taste zur Warenkorben durch ein Kontaktformular, wenn das Produkt in WooCommerce nicht vorrätig ist

Post by Anonymous »

Mit Hilfe der Community habe ich das gewünschte Verhalten mit variablen Produkten erfolgreich erhalten, aber ich kann es nicht an einfachen Produkten duplizieren.

Code: Select all

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).>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post