<?php add_filter('woocommerce_dropdown_variation_attribute_options_args','woo_select_default_option',10,1); function woo_select_default_option( $args) { if(count($args['options']) > 0) //Ensure product variation isn't empty $args['selected'] = $args['options'][0]; return $args; } add_action( 'woocommerce_variable_add_to_cart', 'bbloomer_update_price_with_variation_price' ); function bbloomer_update_price_with_variation_price() { if(is_product()){ global $product; $price = $product->get_price_html(); wc_enqueue_js( " $(document).on('found_variation', 'form.cart', function( event, variation ) { if(variation.price_html) $('.fb-prod-content-one p.price').html(variation.price_html); $('.woocommerce-variation-price').hide(); }); $(document).on('hide_variation', 'form.cart', function( event, variation ) { $('.fb-prod-content-one p.price').html('" . $price . "'); }); " ); } } add_filter('woocommerce_available_variation', function($available_variations, \WC_Product_Variable $variable, \WC_Product_Variation $variation) { if (empty($available_variations['price_html'])) { $available_variations['price_html'] = '<span class="price">' . $variation->get_price_html() . '</span>'; } return $available_variations; }, 10, 3); ?>
<?php function add_variation_radio_buttons() { ?> <script type="text/javascript"> document.addEventListener( 'DOMContentLoaded', function() { var variations_form = document.querySelector( 'form.variations_form' ); var data = variations_form.getAttribute( 'data-product_variations' ); data = JSON.parse( data ); var selects = document.querySelectorAll( 'table.variations select' ); selects.forEach( function( select ) { var options = select.querySelectorAll( 'option' ); options.forEach( function( option ) { if( ! option.value ) { return; } var pricing = ''; data.forEach( function( row ) { if( row.attributes[select.name] == option.value ) { pricing = row.price_html; } } ); var radio = document.createElement( 'input' ); radio.type = 'radio'; radio.name = select.name; radio.value = option.value; radio.checked = option.selected; var label = document.createElement( 'label' ); label.appendChild( document.createTextNode( ' ' + option.text + ' ' ) ); var div = document.createElement( 'div' ); div.classList.add('fb-woo-single-btn-variation'); div.appendChild( radio ); div.appendChild( label ); // Check if variation has stock var variationData = data.find(function(row) { return row.attributes[select.name] == option.value; }); // Check if product has only one attribute var hasSingleAttribute = Object.keys(variationData.attributes).length === 1; if (variationData && !variationData.is_in_stock && hasSingleAttribute) { div.classList.add('disable'); } select.closest( 'td' ).appendChild( div ); radio.addEventListener( 'click', function( event ) { select.value = radio.value; jQuery( select ).trigger( 'change' ); } ); } ); select.style.display = 'none'; } ); } ); </script> <?php } add_action( 'woocommerce_variable_add_to_cart', 'add_variation_radio_buttons' ); # SOURCE: https://codedcommerce.com/woo/change-variation-drop-downs-to-radio-buttons/ /* add_action( 'woocommerce_variable_add_to_cart', function() { add_action( 'wp_print_footer_scripts', function() { ?> <script type="text/javascript"> // DOM Loaded document.addEventListener( 'DOMContentLoaded', function() { // Get Variation Pricing Data var variations_form = document.querySelector( 'form.variations_form' ); var data = variations_form.getAttribute( 'data-product_variations' ); data = JSON.parse( data ); // Loop Drop Downs document.querySelectorAll( 'table.variations select' ) .forEach( function( select ) { // Loop Drop Down Options select.querySelectorAll( 'option' ) .forEach( function( option ) { // Skip Empty if( ! option.value ) { return; } // Get Pricing For This Option var pricing = ''; data.forEach( function( row ) { if( row.attributes[select.name] == option.value ) { pricing = row.price_html; } } ); // Create Radio var radio = document.createElement( 'input' ); radio.type = 'radio'; radio.name = select.name; radio.value = option.value; radio.checked = option.selected; var label = document.createElement( 'label' ); label.appendChild( document.createTextNode( ' ' + option.text + ' ' ) ); var div = document.createElement( 'div' ); div.classList.add('fb-woo-single-btn-variation'); div.appendChild( radio ); div.appendChild( label ); // Insert Radio select.closest( 'td' ).appendChild( div ); // Handle Clicking radio.addEventListener( 'click', function( event ) { select.value = radio.value; jQuery( select ).trigger( 'change' ); } ); } ); // End Drop Down Options Loop // Hide Drop Down select.style.display = 'none'; } ); // End Drop Downs Loop } ); // End Document Loaded </script> <?php } ); } ); */ ?>
Dressing Trio
Preț la cerere
Dressing cu usi glisante – produs din materiale de cea mai buna calitate: pal melaminat, sisteme de glisare cu sina superioara si inferioara din aluminiu si rulment invelit in plastic (glisare fara zgomot). Interiorul dulapului cu usi glisante se poate imparti in asa fel incat sa implineasca toate nevoile dumneavoastra de depozitare. Apelati la noi cu incredere pentru un mobilier de calitate si preturi excelente.
Produse similare
Uși separație Bella
Preț la cerere
Uși separație partiție
Preț la cerere
Uși separație Mamout
Preț la cerere
Uși separație Gigant
Preț la cerere
Recenzii
Nu există recenzii până acum.