Php 更改电子商务订阅的订单按钮上的文本

Php 更改电子商务订阅的订单按钮上的文本,php,wordpress,woocommerce,checkout,woocommerce-subscriptions,Php,Wordpress,Woocommerce,Checkout,Woocommerce Subscriptions,这里描述的问题正是我需要做的,并且解决方案有效: 然而,我们接受一次性的“订单”,以捐赠和订阅的形式赞助一个孩子。如果购物车中有订阅,签出按钮显示“立即注册”。我需要它读“现在就给”,无论车里有什么 (上面描述的更改不是实时的,它当前使用默认的“下单”,无论购物车中有什么内容都是一致的) 翻译似乎不起作用 我也试过: function woocommerce_custom_subscription_product_single_add_to_cart_text( $text = '' , $p

这里描述的问题正是我需要做的,并且解决方案有效:

然而,我们接受一次性的“订单”,以捐赠和订阅的形式赞助一个孩子。如果购物车中有订阅,签出按钮显示“立即注册”。我需要它读“现在就给”,无论车里有什么

(上面描述的更改不是实时的,它当前使用默认的“下单”,无论购物车中有什么内容都是一致的)

翻译似乎不起作用

我也试过:

function woocommerce_custom_subscription_product_single_add_to_cart_text( $text = '' , $post = '' ) {

    global $product;

    if ( $product->is_type( 'subscription' ) ) {
        $text = get_option( WC_Subscriptions_Admin::$option_prefix . '_add_to_cart_button_text', __( 'Give Now', 'woocommerce-subscriptions' ) );
    } else {
        $text = $product->add_to_cart_text(); // translated "Read More"
    }

    return $text;
}
add_filter('woocommerce_product_single_add_to_cart_text', 'woocommerce_custom_subscription_product_single_add_to_cart_text', 2, 10);

要更改签出页面中提交按钮的文本,正确使用的过滤器挂钩是
woocommerce\u order\u button\u text
。这是代码:

add_filter('woocommerce_order_button_text', 'subscriptions_custom_checkout_submit_button_text' );
function subscriptions_custom_checkout_submit_button_text( $order_button_text ) {
    if ( WC_Subscriptions_Cart::cart_contains_subscription() ) {
        $order_button_text =  __( 'Give Now', 'woocommerce-subscriptions'  );
    } else {
        // You can change it here for other products types in cart
        # $order_button_text =  __( 'Something here', 'woocommerce-subscriptions'  );
    }
    return $order_button_text;
}
代码位于活动子主题(或主题)的function.php文件或任何插件文件中

这段代码在woocommerce 3.1+上进行了测试,可以正常工作

或者您可以在WooCommerce>设置>订阅(选项卡)中更改它: