Woocommerce不更新产品差异价格(仅通过“ klick”按钮)

时间:2019-05-17 17:51:51

标签: php jquery html

我在函数PHP中添加了以下代码,以告知WooCommerce仅显示所选产品变体的价格(而不显示标准价格范围)。它适用于所有产品,但其中一种具有多种产品变体

我添加的代码未显示价格范围,但显示了实际价格:

add_action( 'woocommerce_before_single_product', 
'check_if_variable_first' );function check_if_variable_first(){
if ( is_product() ) {
    global $post;
    $product = wc_get_product( $post->ID );
    if ( $product->is_type( 'variable' ) ) {
        // removing the price of variable products remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_price', 10 ); // Variable product only if($product->is_type('variable')):


?>
<style>
    div.woocommerce-variation-price,
    div.woocommerce-variation-availability,
    div.hidden-variable-price {
        height: 0px !important;
        overflow:hidden;
        position:relative;
        line-height: 0px !important;
        font-size: 0% !important;
    }
</style>
<script>
jQuery(document).ready(function($) {
    $('select').blur( function(){
        if( '' != $('input.variation_id').val() ){
            $('p.price').html($('div.woocommerce-variation-price > span.price').html()).append('<p class="availability">'+$('div.woocommerce-variation-availability').html()+'</p>');
            console.log($('input.variation_id').val());
        } else {
            $('p.price').html($('div.hidden-variable-price').html());
            if($('p.availability'))
                $('p.availability').remove();
            console.log('NULL');
        }
    });
});
</script>
<?php

echo '<p class="prrice">'.$price.'</p>
<div class="hidden-variable-price" >'.$price.'</div>';

endif;


    }
}
}

对于大多数产品来说效果都很好。但是,我添加了一个具有72种产品变体的产品(比其他产品大得多),现在,仅当我单击屏幕上的某个位置时,价格才会更新。你知道为什么会这样吗?难道真的是因为许多产品变型使它变慢了?

非常感谢您

0 个答案:

没有答案