php修改费用,php – 如何更改WooCommerce订阅中的注册费用文本?

到目前为止,我已经尝试将以下代码添加到我的functions.php中,但没有运气:

function my_text_strings( $translated_text, $text, $domain ) {

switch ( $translated_text ) {

case 'Sign-up Fee' :

$translated_text = __( 'bin deposit', 'woocommerce-subscriptions' );

break;

case 'Apply Coupon':

$translated_text = __( 'Enter Coupon', 'woocommerce' );

break;

}

return $translated_text;

}

add_filter( 'gettext', 'my_text_strings', 20, 3 );

?>

function my_signupfee_string( $pricestring ) {

$newprice = str_replace( 'sign-up fee', 'bin deposit', $pricestring );

return $newprice;

}

add_filter( 'woocommerce_subscriptions_sign_up_fee', 'my_signupfee_string' );

?>

这些功能都不起作用,我是新手更改插件的内部插件.

解决方法:

您使用的是错误的过滤器. woocommerce_subscriptions_sign_up_fee过滤器仅用于更改实际数字. gettext过滤器是关于翻译字符串的.

试试这个:

function change_subscription_product_string( $subscription_string, $product, $include )

{

if( $include['sign_up_fee'] ){

$subscription_string = str_replace('sign-up fee', 'something else', $subscription_string);

}

return $subscription_string;

}

add_filter( 'woocommerce_subscriptions_product_price_string', 'change_subscription_product_string', 10, 3 );

在我的例子中,这改变了字符串:

“为期5个月,每月111.10美元,3个月免费试用和22美元注册费”

“为期5个月,每月111.10美元,免费试用期为3个月,另外还有22美元

woocommerce_subscriptions_product_price_string过滤器位于函数get_price_string()中的class-wc-subscriptions-product.php中.

标签:php,woocommerce,subscriptions

来源: https://codeday.me/bug/20190609/1201627.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值