Comience su viaje transfronterizo
Póngase en contacto con nosotros

Servicio de atención al cliente

Atención al cliente

Diseñador (creación de prototipos Figma)

Código de la primera variante por defecto para las páginas de productos

add_action('wp_footer', function () {
    if (!is_product()) return;
    ?>
    <script>
    jQuery(function($){
        var $form = $('form.variations_form');
        if (!$form.length) return;

        // 防重复
        if ($form.data('firstVariationActivated')) return;
        $form.data('firstVariationActivated', true);

        function activateFirstOnce(){
            var didSomething = false;

            // 逐组处理 Blocksy 的色板
            $('.ct-variation-swatches').each(function(){
                var $group  = $(this);
                var $select = $group.find('select[name^="attribute_"]').first();
                if (!$select.length) return;

                // 找到第一个可用选项(有值、非禁用)
                var $opt = $select.find('option').filter(function(){
                    var val = $(this).attr('value');
                    return val && val !== '' && !this.disabled;
                }).first();
                if (!$opt.length) return;

                var val = $opt.val();

                // 如果当前没选或选的不是它,就设置并触发一次 change
                if ($select.val() !== val) {
                    $select.val(val).trigger('change');
                    didSomething = true;
                }

                // 同步点击对应 swatch,让主题自己加“激活”态
                var $swatch = $group
                    .find('.ct-swatch-container[data-value="'+val+'"]')
                    .filter(':not(.disabled):not([aria-disabled="true"])')
                    .first();

                if ($swatch.length) {
                    // 若已是激活就不点;否则只点一次
                    var alreadyActive = $swatch.is('.is-active, .selected, .ct-swatch-selected, .variable-item-selected, [aria-pressed="true"]');
                    if (!alreadyActive) {
                        $swatch.trigger('click');
                    }
                }
            });

            // 只在确实改动过时,给表单一次性触发 change(避免死循环)
            if (didSomething) {
                setTimeout(function(){
                    $form.trigger('change');
                }, 50);
            }
        }

        // 等 Woo 的变体表单初始化后执行一次;再做一次兜底延时
        $form.on('wc_variation_form', function(){
            setTimeout(activateFirstOnce, 150);
        });
        setTimeout(function(){
            // 有些主题不会触发 wc_variation_form,这里兜底跑一次
            activateFirstOnce();
        }, 400);
    });
    </script>
    <?php
});