dqxm14187 2016-03-07 06:44
浏览 35

WooCommerce将数量按钮添加到商店

I would like to know how can I add a simple quantity button to my WooCommerce shop products.

Image

  • 写回答

1条回答 默认 最新

  • dongmijgnnq0118 2016-03-07 06:49
    关注

    Here is how i modified my loop/add-to-cart.php to achieve this:

    <?php
        /**
         * Loop Add to Cart
         *
         * @author      WooThemes
         * @package     WooCommerce/Templates
         * @version     1.6.4
         */
    
        if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
    
        global $product;
        ?>
    
        <?php if ( ! $product->is_in_stock() ) : ?>
    
            <a href="<?php echo apply_filters( 'out_of_stock_add_to_cart_url', get_permalink( $product->id ) ); ?>" class="button"><?php echo apply_filters( 'out_of_stock_add_to_cart_text', __( 'Read More', 'woocommerce' ) ); ?></a>
    
        <?php else : ?>
    
            <?php
                $link = array(
                    'url'   => '',
                    'label' => '',
                    'class' => ''
                );
    
                $handler = apply_filters( 'woocommerce_add_to_cart_handler', $product->product_type, $product );
    
                switch ( $handler ) {
                    case "variable" :
                        $link['url']    = apply_filters( 'variable_add_to_cart_url', get_permalink( $product->id ) );
                        $link['label']  = apply_filters( 'variable_add_to_cart_text', __( 'Select options', 'woocommerce' ) );
                    break;
                    case "grouped" :
                        $link['url']    = apply_filters( 'grouped_add_to_cart_url', get_permalink( $product->id ) );
                        $link['label']  = apply_filters( 'grouped_add_to_cart_text', __( 'View options', 'woocommerce' ) );
                    break;
                    case "external" :
                        $link['url']    = apply_filters( 'external_add_to_cart_url', get_permalink( $product->id ) );
                        $link['label']  = apply_filters( 'external_add_to_cart_text', __( 'Read More', 'woocommerce' ) );
                    break;
                    default :
                        if ( $product->is_purchasable() ) {
                            $link['url']    = apply_filters( 'add_to_cart_url', esc_url( $product->add_to_cart_url() ) );
                            $link['label']  = apply_filters( 'add_to_cart_text', __( 'Add to cart', 'woocommerce' ) );
                            $link['class']  = apply_filters( 'add_to_cart_class', 'add_to_cart_button' );
                        } else {
                            $link['url']    = apply_filters( 'not_purchasable_url', get_permalink( $product->id ) );
                            $link['label']  = apply_filters( 'not_purchasable_text', __( 'Read More', 'woocommerce' ) );
                        }
                    break;
                }
                if ( $product->product_type == 'simple' ) {
    
                    ?>
                    <form action="<?php echo esc_url( $product->add_to_cart_url() ); ?>" class="cart" method="post" enctype='multipart/form-data'>
    
                        <?php woocommerce_quantity_input(); ?>
    
                        <button type="submit" class="button alt"><?php echo $label; ?></button>
    
                    </form>
                    <?php
    
                } else {
                    echo apply_filters( 'woocommerce_loop_add_to_cart_link', sprintf('<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" class="%s button product_type_%s">%s</a>', esc_url( $link['url'] ), esc_attr( $product->id ), esc_attr( $product->get_sku() ), esc_attr( $link['class'] ), esc_attr( $product->product_type ), esc_html( $link['label'] ) ), $product, $link );
                }
            ?>
    
        <?php endif; ?>
    
    评论

报告相同问题?

悬赏问题

  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改