php - Woocommerce 添加到购物车条件

标签 php wordpress woocommerce hook-woocommerce

我最近在 function.php 中实现了当价格为 0 时重定向 url 的代码,但它似乎只是缺少并且价格条件不起作用。查看我的代码。

/**
 * Set a custom add to cart URL to redirect to
 * @return string
 **/

function custom_add_to_cart_redirect() { 
      $_product = wc_get_product( $product_id );
      if( $product->get_price() == 0 ||  $product->get_price() == '') {
        return 'http://www.nichegas.ads-tracker.com/contact/'; 
        }
}
add_filter( 'woocommerce_add_to_cart_redirect', 'custom_add_to_cart_redirect' );

看来我缺少某些代码或其他东西。 我们的目标是: 1. 如果价格为 0,它将重定向到自定义 url 2 同样,当单击添加到卡时,它的零不会将项目添加到购物车。如何禁用添加产品?

非常感谢您的帮助。祝你有美好的一天!

最佳答案

更新

Alternatively you can use also woocommerce_add_to_cart hook instead, and **here is possible to remove the freshly added item, this way:

add_action( 'woocommerce_add_to_cart', 'custom_add_to_cart', 10, 2 );
function custom_add_to_cart( $cart_item_key, $product_id ) {

    $_product = wc_get_product($product_id);
    $_product_price = $_product->get_price();
    if( $_product_price == 0 || empty($_product_price) ) {

        // Removing this freshly added cart item
        WC()->cart->remove_cart_item($cart_item_key);

        // Redirecting to some url
        wp_redirect( 'http://www.nichegas.ads-tracker.com/contact/' );

        exit; 
    }
}

代码进入您活跃的子主题(或主题)的 function.php 文件。或者也可以在任何插件 php 文件中。

关于php - Woocommerce 添加到购物车条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41161177/

相关文章:

wordpress - 子文件夹中的另一个 WordPress 安装

php - 是否可以让 wordpress 用户知道他们已经阅读了哪些帖子?

php - 在 WooCommerce 中仅获取管理员手动订单注释(不是 "system")

php - 获取 WooCommerce 可变产品变体的销售日期

php + populate 下拉菜单选择另一个

php - 在两个表单之间传递值

php - 拆分 CSS 是一个好习惯吗?

php - Codeigniter - 插入两个表,第二个表中包含用户 ID

javascript - 在javascript中从wordpress数据库中检索值

php - 删除 WooCommerce 结帐字段值