我想隐藏商店页面上的按钮,但我想在其他帖子和页面上显示。
我发现此代码隐藏了整个网站上的“添加到购物车”按钮:
add_action( 'woocommerce_after_shop_loop_item', 'remove_add_to_cart_buttons', 1 );
function remove_add_to_cart_buttons() {
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart' );
}
我如何调整它,所以它只删除了woocommerce商店和catagory页面上的按钮?
答案 0 :(得分:10)
您可以使用Woocommerce条件标记来检查: http://docs.woothemes.com/document/conditional-tags/
add_action( 'woocommerce_after_shop_loop_item', 'remove_add_to_cart_buttons', 1 );
function remove_add_to_cart_buttons() {
if( is_product_category() || is_shop()) {
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart' );
}
}
答案 1 :(得分:1)
这也可以通过定位相关类来完成:
.cart{display:none;}
.avia_cart_buttons{display:none;}
在我的情况下有avia因为我使用Enfold Theme。使用inspect元素找出你的班级所在的班级。并声明它是不可见的。
另一个例子是:
.woocommerce .products .shop-column.product-hover-style-2 .product-content
.product-add-to-cart-btn{
display:none !important;
}
答案 2 :(得分:1)
add_action('wp','only_add_bierkoerier_in_cart', 'woocommerce_before_cart');
function only_add_bierkoerier_in_cart() {
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$bierkoerier_in_cart = false;
$categories = get_categories();
if ( has_term( 'bierkoerier', 'product_cat', $cart_item['product_id'] ) ) {
$bierkoerier_in_cart = true;
break;
}
}
if($bierkoerier_in_cart) {
wc_print_notice( 'omdat u bierkoerier producten in uw winkelwagen heeft
kunt u geen winkelitems toevoegen', 'notice' );
if(is_shop() || is_product() || is_product_category()) {
remove_action( 'woocommerce_after_shop_loop_item','woocommerce_template_loop_add_to_cart' );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
}
}
}
答案 3 :(得分:0)
要删除"添加到购物车" 按钮 你需要使用不影响其他代码的钩子 -
add_action( 'woocommerce_after_shop_loop_item', 'remove_loop_button', 1 );
function remove_loop_button()
{
if( is_product_category() || is_shop()) {
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart');
}
}
这将从商店/类别页面中删除添加到购物车按钮。
在这里你可以获得WooCommerce Action和Filter Hook - https://docs.woothemes.com/wc-apidocs/hook-docs.html
答案 4 :(得分:0)
这是一个插件,您可以使用它来删除隐藏禁用添加到购物车按钮https://wordpress.org/plugins/woo-options/
答案 5 :(得分:0)
这非常简单,因为我在尝试修复它时经历了几个教程。你必须把这个代码放在woocommerce.php中,以隐藏商店页面的添加到购物车按钮。
function WpBlog() {
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart');
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart');
return WooCommerce::instance();
}
希望这对你有用,如果不让我知道我会指导你
答案 6 :(得分:0)
要从商店,产品类别和单个产品页面中删除“添加到购物车”按钮,请使用以下步骤:
在子主题中找到functions.php。子主题可防止更改被WP更新覆盖。 https://www.dreamhost.com/wordpress/create-woocommerce-child-theme/
在functions.php中放置以下代码:
add_action('woocommerce_after_shop_loop_item','remove_add_to_cart_buttons',1); 函数remove_add_to_cart_buttons(){ if(is_product_category()|| is_shop()){ remove_action('woocommerce_after_shop_loop_item','woocommerce_template_loop_add_to_cart'); } }
add_action('woocommerce_single_product_summary','woocommerce_before_cart'); 函数woocommerce_before_cart(){ if(is_product()){ remove_action('woocommerce_single_product_summary','woocommerce_template_single_add_to_cart',30); } }