Woocommerce隐藏添加到购物车(1个用户角色除外)

时间:2018-06-28 08:34:56

标签: php wordpress woocommerce hook-woocommerce

我正在寻找一种对除1个特定角色(可能称为-'pro-sub')以外的所有用户隐藏“添加到购物车”按钮的方法。只有一种产品我不想隐藏“添加到购物车”按钮,即“订阅”产品。

基本上,我有一个客户要求租用订阅网站,这意味着,唯一需要购买的项目是订阅(可变产品-1mo / 3mo / 6mo等),可以添加网站上的所有其他项目到购物车(购物车中最多3个),“添加到购物车”按钮应仅针对这些订户显示。我确实从LoicTheAztec看到了以下代码:

function remove_add_to_cart_for_user_role(){
// Set Here the user role slug
$targeted_user_role = 'revenda'; // The slug in "lowercase"
$user_data = get_userdata(get_current_user_id());
if ( in_array( $targeted_user_role, $user_data->roles ) ) {
    remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
    remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
  }
 } 
add_action('init', 'remove_add_to_cart_for_user_role');

但是,我希望能够首先为除“订阅”产品以外的所有用户(除了1个用户角色(以及管理员角色))删除按钮。

我当时正在考虑使用我发现的一些代码,但首先使用'remove_action'部分并将其放置在函数外部,但是我不确定如何将其余的函数重新处理为show_add_to_cart_for_user_role()。 / p>

0 个答案:

没有答案