Ada*_*urn 2 php variables wordpress loops woocommerce
<?php
    switch ( $product->product_type ) {
        case "variable" :
            $link   = apply_filters( 'variable_add_to_cart_url', get_permalink( $product->id ) );
            $label  = apply_filters( 'variable_add_to_cart_text', __('Select options', 'woocommerce') );
        break;
        case "grouped" :
            $link   = apply_filters( 'grouped_add_to_cart_url', get_permalink( $product->id ) );
            $label  = apply_filters( 'grouped_add_to_cart_text', __('View options', 'woocommerce') );
        break;
        case "external" :
            $link   = apply_filters( 'external_add_to_cart_url', get_permalink( $product->id ) );
            $label  = apply_filters( 'external_add_to_cart_text', __('Read More', 'woocommerce') );
        break;
        default :
            $link   = apply_filters( 'add_to_cart_url', esc_url( $product->add_to_cart_url() ) );
            $label  = apply_filters( 'add_to_cart_text', __('Add to cart', 'woocommerce') );
        break;
    }
    printf('<a href="%s" rel="nofollow" data-product_id="%s" class="add_to_cart_button button product_type_%s">%s</a>', $link, $product->id, $product->product_type, $label);
?>
Run Code Online (Sandbox Code Playgroud)
我正在尝试在循环内显示变化,以便客户可以从商店页面将可变产品添加到购物车(请参见下面的屏幕截图)...
http://cl.ly/image/42401k0X0X2I
我知道我需要包含该功能-
get_available_variations();
Run Code Online (Sandbox Code Playgroud)
我很确定这已经返回一个数组,它只是将该数组放入选择下拉列表中+列出变体(S,M,L,XL)并有一个链接将该变体添加到购物篮中。
干杯!
小智 5
我在尝试解决同样的问题时发现了您的帖子。我终于发现...
function woocommerce_variable_add_to_cart() {
    global $product;
    // Enqueue variation scripts
    wp_enqueue_script( 'wc-add-to-cart-variation' );
    // Load the template
    woocommerce_get_template( 'single-product/add-to-cart/variable.php', array(
            'available_variations'  => $product->get_available_variations(),
            'attributes'            => $product->get_variation_attributes(),
            'selected_attributes'   => $product->get_variation_default_attributes()
        ) );
}
}
Run Code Online (Sandbox Code Playgroud)
在
这在loop/add-to-cart.php中对我有用
switch ( $product->product_type ) {
        case "variable" :
            $link   = apply_filters( 'variable_add_to_cart_url', get_permalink( $product->id ) );
            $label  = woocommerce_variable_add_to_cart();
        break;
Run Code Online (Sandbox Code Playgroud)
让我知道这是否有帮助:)