希望得到一些帮助,以消除这个"添加到购物车"按钮以及显示的here定价。有关插件的文档也可以找到here。
我目前在WooCommerce中删除定价的是:
add_filter('woocommerce_get_price_html','members_only_price');
function members_only_price($price){
if(is_user_logged_in() ){
return $price;
} else {
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 );
remove_action( 'woocommerce_simple_add_to_cart', 'woocommerce_simple_add_to_cart', 30 );
remove_action( 'woocommerce_grouped_add_to_cart', 'woocommerce_grouped_add_to_cart', 30 );
remove_action( 'woocommerce_variable_add_to_cart', 'woocommerce_variable_add_to_cart', 30 );
remove_action( 'woocommerce_external_add_to_cart', 'woocommerce_external_add_to_cart', 30 );
return 'Only <a href="' .get_permalink(woocommerce_get_page_id('myaccount')). '">Registered Users</a> are able to view pricing.';
}
}
IIRC这是original question我能够使用代码,直到我们需要复合产品。
答案 0 :(得分:0)
您的问题的解决方案是您只需要为复合类型的产品添加一个“remove_action”。
要实现此目的,您需要移除 woocommerce_composited_add_to_cart
的操作诀窍在于,如果您搜索此操作,您将会知道使用类对象添加此操作,因此您需要使用相同的类对象删除它。
有关如何使用类对象删除操作的教程已经在您需要研究的网络上。
这肯定会帮助您实现解决方案。