php woocommerce -删除“添加到购物车”按钮

l3zydbqr  于 2023-10-15  发布在  PHP
关注(0)|答案(6)|浏览(153)

什么是正确的方法来隐藏只有“添加到购物车”按钮,而不影响其他东西,如变化下拉菜单或数量?
我在按钮上找到了使用display:none的解决方案,但这可以绕过。
我的目标是取代“添加到购物车”-按钮与“请求价格”-按钮对某些产品。

vohkndzv

vohkndzv1#

plugins > woocommerce并打开文件woocommerce. php

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 );

此代码将帮助您隐藏添加到购物车按钮从商店页面和产品详细信息页面

unftdfkk

unftdfkk2#

只隐藏“加入购物车”-

function remove_loop_button(){
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart');
}
add_action('init','remove_loop_button');

add_action('woocommerce_after_shop_loop_item','replace_add_to_cart');
function replace_add_to_cart() {
global $product;
$link = $product->get_permalink();
echo do_shortcode('<a href="'.$link.'" class="button addtocartbutton">Request price</a>');
}

它将删除商店页面中每个产品的添加到购物车按钮。
在这里您可以获得WooCommerce Action和Filter Hook -https://docs.woothemes.com/wc-apidocs/hook-docs.html

pexxcrt2

pexxcrt23#

function remove_loop_button(){
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
}
add_action('init','remove_loop_button');

这个代码为我工作。
如果它失败了,我去wc-template-hooks.php插件/woocommerce评论如下:

add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
e4eetjau

e4eetjau4#

这种方法甚至适用于WooCommerce 8.1.1。
编辑:
WordPress ->文件管理器->您的网站-> wp-contents ->插件-> includes/wc-template-hooks.php
搜索这行并注解它:

add_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );

对于模板中的其他位置,注解此行:

add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
8wigbo56

8wigbo565#

我有一个主题叫Rango,它显示重复的添加到购物车按钮的问题,无论如何.我不得不进入wp-content/themes/rango/inc/woo/,并在那里有一个名为hooks.php的文件,我注解了add_action('woocommerce_after_shop_loop_item', 'ftc_template_loop_add_to_cart', 80);,这对我有用。

sqougxex

sqougxex6#

下面是你的解决方案代码。你需要使用不影响其他代码的钩子。这将删除添加到购物车按钮从所有产品.

function remove_loop_button(){
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
}
add_action('init','remove_loop_button');

下面是代码,如果你想改变添加到购物车按钮文本,你可以使用该代码。

add_filter( 'add_to_cart_text', 'woo_custom_cart_button_text' );    // < 2.1

function woo_custom_cart_button_text() {
 
        return __( 'My Button Text', 'woocommerce' );
 
}

More about woocommerce hook and filters

相关问题