Cere oferta
<?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
 
    } );
 
} );

*/
?>

Birou Team

0 customer reviews

Preț la cerere

Birouri operatioanle la comanda realizate din pal melaminat de 18 mm (MDF), finisaj alb lucios, picioare metalice cu baza antiderapanta, finisaj alb. Birourile pot fi prevazute cu paravane despartitoare din PAL, MDF, plexiglass, geam sablat sau vopsit. Montajul si transportul sunt gratuite (in Bucuresti). Pentru alte orase din tara va rugam sa cereti operatorilor nostri mai multe detalii la numerele afisate in site. Mobilier pentru birou la comanda.

Reviews

There are no reviews yet.

Be the first to review “Birou Team”

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Produse similare

Cere oferta

GDPR

Completează formularul și lansează comanda. Dacă ai schițe în format .pdf, .png sau .jpg, încarcă-le prin click pe butonul Alege maxim 5 fișiere.
După trimiterea cererii vei fi contactat de un reprezentant MobilaInterior.ro

Sau sună la numărul de telefon
0726 234 342