当前位置: 首页 > 知识库问答 >
问题:

WooCommerce商店页面:添加到购物车按钮上的数量输入

太叔经赋
2023-03-14

我正在使用WooCommerce插件的Divi主题。在商店页面,我想有数量调整直接添加到购物车按钮。

我的网站

目前,你必须点击产品进入单一产品页面,然后才有可能添加到购物车。

我试图找出是什么产生了产品列表,以便我可以修改它,但正如你可能猜到的那样,我对这个非常陌生。

如何将该功能添加到商店页面产品?

共有3个答案

丁俊智
2023-03-14

因此,我最终做的是将单个页面添加到购物车操作添加到商店页面循环的钩子中,如下所示:

add_action('woocommerce_after_shop_loop_item',
           'woocommerce_template_single_add_to_cart', 30);

谢谢

贡英华
2023-03-14

WooCommerce留档有API有很好的感觉。最近他们升级到WP JSON API集成2.6版本。1)通过api调用下单
2)make和ajax请求通过以下方式轻松更改数量

http://domain.com/?add-to-cart=Product-Id&variation_id=136&quantity=2

示例:

http://domain.com/?add-to-cart=97&variation_id=136&attribute_pa_sizes=xl

如果您没有任何变化或选择,您可以通过

http://domain.com/?add-to-cart=Id&&quantity=Qty
鲁博赡
2023-03-14

建议:最好使用子主题,以免在主题更新时丢失要做的更改。所以我假设你现在会使用一个儿童主题。

入住WooCommerce

在这个活动的子主题中,您将找到一个function.php文件。如果没有,您将从父主题中复制它,删除其中的所有代码,除了

完成后,您将使用woocommerce_loop_add_to_cart_link筛选器钩子将数量添加到添加到购物车按钮(对于简单的产品)。您将在其中粘贴此代码片段:

add_filter( 'woocommerce_loop_add_to_cart_link', 'quantity_inputs_for_woocommerce_loop_add_to_cart_link', 10, 2 );
function quantity_inputs_for_woocommerce_loop_add_to_cart_link( $html, $product ) {
    if ( $product && $product->is_type( 'simple' ) && $product->is_purchasable() && $product->is_in_stock() && ! $product->is_sold_individually() ) {
        $html = '<form action="' . esc_url( $product->add_to_cart_url() ) . '" class="cart" method="post" enctype="multipart/form-data">';
        $html .= woocommerce_quantity_input( array(), $product, false );
        $html .= '<button type="submit" class="button alt">' . esc_html( $product->add_to_cart_text() ) . '</button>';
        $html .= '</form>';
    }
    return $html;
}

您还可以自定义此代码以更好地满足您的需要…

参考:覆盖循环模板并在“添加到购物车”按钮旁边显示数量

 类似资料: