首页 > 解决方案 > Woocommerce:获取与使用添加到购物车按钮添加到购物车的产品相关的所有信息

问题描述

在 Wordpress 主页上,有一个名为 Best Sellers 的部分,展示了网站中的畅销书。总之,这些只是 Woocommerce 循环中带有添加到购物车链接的各种产品。单击此“添加到购物车”链接时,我需要能够通过 AJAX 或 Wordpress/Woocommerce 读取有关刚刚添加到购物车的产品的所有信息,例如其 ID、数量、变体 ID 等无需重新加载页面。

笔记:

请注意,用于完成此任务的任何功能都不应在单击单个产品页面中的添加到购物车按钮时干扰单个产品页面的功能。如果所需的功能级联到网站的其他部分,例如商店、存档等,但不是单一产品页面,那完全没问题。

我尝试了什么:

add_action('wp_footer', 'my_loop_add_to_cart', 21);
function my_loop_add_to_cart() {
    //What code should I write here to access the recently added to cart item? 
}

如果需要,我可以更改挂钩,只是想确保它不会干扰单个产品页面中添加到购物车链接/按钮的功能。

标签: phpjquerywordpresswoocommercehook-woocommerce

解决方案


有几个选项可以做到这一点。我能想到的一个是使用woocommerce_add_to_cart动作钩子。

add_action( 'woocommerce_add_to_cart', 'rmg_woocommerce_add_to_cart', 10, 6 );
function rmg_woocommerce_add_to_cart( $cart_item_key, $product_id, $quantity, $variation_id, $variation, $cart_item_data ){
    // do something with $cart_item_key, $product_id, $quantity, $variation_id, $variation, $cart_item_data
}

推荐阅读