php - 避免将继续结帐按钮文本刷新为 WooCommerce 购物车页面中的默认文本
问题描述
在 WooCommerce 中,在我的 Storefront 子主题中,我编辑了代码proceed-to-checkout-button.php
以将措辞从“Proceed to checkout”更改为“Checkout”:
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
?>
<a href="<?php echo esc_url( wc_get_checkout_url() ); ?>" class="checkout-button button wc-forward">
<?php esc_html_e( 'Checkout', 'woocommerce' ); ?>
</a>
但是当用户在购物车页面中更改产品数量时,按钮文本会恢复为默认的“继续结帐”。
是否有过滤器或在哪里编辑此更新的文本?
编辑 - 问题已解决
该问题与WooCommerce Better Usability pro插件中的特定购物车选项有关,其中需要禁用“自动更新购物车时显示文本”选项(未选中)。
解决方案
而不是覆盖proceed-to-checkout-button.php
文件,应使用以下内容:
remove_action( 'woocommerce_proceed_to_checkout', 'woocommerce_button_proceed_to_checkout', 20 );
add_action( 'woocommerce_proceed_to_checkout', 'custom_button_proceed_to_checkout', 20 );
function custom_button_proceed_to_checkout() {
echo '<a href="'.esc_url(wc_get_checkout_url()).'" class="checkout-button button alt wc-forward">' .
__("Checkout", "woocommerce") . '</a>';
}
代码在您的活动子主题(或活动主题)的functions.php 文件中。在 Storefront 主题下测试并在最后一个 WooCommerce 版本上运行。
现在,由于您已经在模板中进行了很多自定义,或者您可能正在使用购物车页面中的某些插件进行自定义,因此由于这些自定义,问题可能仍然存在。
推荐阅读
- c# - 在 Asp.net Core 中替代 thread.Abort()?
- reactjs - 反应本机导航不正确
- sql - 查找最近逾期的日期
- sql - Cross joins in results
- filter - OAuthRequestFilter(或 ContainerRequestFilter)在 AbstractFeature 中不起作用 - “org.apache.cxf.resource.method”为空
- mysql - 选择连接两个表并循环以获得两个不同的值
- android - Android Studio:清单合并失败,材料有多个错误:1.0.0
- python - TFS 2018 API(4.1 版本)- Python:无法在使用 4.1 或 5.1 版本的运行结果中添加附件
- junit - PowerMock:如何监视 System.out.println?
- typescript - Laravel groupby 就像 costum group by 管道