<?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 } ); } ); */ ?>
Hol Mirror
Preț la cerere
Un dulap suspendat pentru haine care mascheza tot ce se afla inauntru si da eleganta holului prin aplicare a 3 oglinzi simetrice pe una din usi. Acest mobilier a fost creat sa impresioneze si sa fie extrem de util. Pentru detalii si comenzi, nu ezitati sa sunati la numerele afisate in site. Va asteptam!
Produse similare
Hol la comandă București
Preț la cerere
Hol Alb-Negru
Preț la cerere
Hol Opal
Preț la cerere
Hol Simply
Preț la cerere
Recenzii
Nu există recenzii până acum.