如何修改WooCommerce迷你购物车按钮文本并移除查看购物车按钮
修改WooCommerce迷你购物车按钮文本/移除按钮的有效方案
一、原方法失效原因
你之前使用的gettext过滤器未指定WooCommerce的专属文本域woocommerce,导致无法精准匹配目标文本,所以替换不生效。
二、修改按钮文本的有效代码方案
将以下代码添加到主题的functions.php文件或自定义插件中,可同时替换“View cart”和“Checkout”为“Request quote”:
add_filter( 'gettext', function( $translated_text, $text, $domain ) { if ( 'woocommerce' === $domain ) { switch ( $text ) { case 'View cart': $translated_text = 'Request quote'; break; case 'Checkout': $translated_text = 'Request quote'; break; } } return $translated_text; }, 20, 3 );
- 优先级设为
20是为了确保覆盖默认的文本翻译 - 代码生效前需清除浏览器缓存及WooCommerce缓存
三、移除“View cart”按钮的方案
1. 代码移除(推荐)
通过钩子直接取消默认按钮的输出,同时可自定义保留的按钮文本:
add_action( 'woocommerce_widget_shopping_cart_buttons', function() { // 移除默认的"View Cart"按钮 remove_action( 'woocommerce_widget_shopping_cart_buttons', 'woocommerce_widget_shopping_cart_button_view_cart', 10 ); // 自定义输出修改后的结算按钮 echo '<a href="' . esc_url( wc_get_checkout_url() ) . '" class="button checkout wc-forward">Request quote</a>'; }, 5 );
2. CSS隐藏(快速临时方案)
若不想修改代码,可添加以下CSS到主题自定义样式中:
/* 隐藏迷你购物车的"View Cart"按钮 */ .widget_shopping_cart .button.wc-forward:first-child { display: none; }
注意:CSS仅做视觉隐藏,页面源码中仍会保留原按钮文本,不适合对SEO有要求的场景。
内容的提问来源于stack exchange,提问作者Youssef Ketata
相关产品推荐
相关产品推荐

