大家好,让我试着解释一下。
请注意:我使用了woo商务模块插件(用于购物车和结账页面,以替换原始的快捷代码)
我想要将“运送”一词更改为“交付”一词。
我在我的functions.php中使用了这个钩子,它确实将一个单词改为delivery,这样就可以工作了
add_filter('woocommerce_shipping_package_name', 'change_shipping_text_to_delivery', 20, 3 );
function change_shipping_text_to_delivery( $sprintf, $i, $package ) {
$sprintf = sprintf( _nx( 'Delivery', 'Delivery %d', ( $i + 1 ), 'delivery packages', 'woocommerce' ), ( $i + 1 ) );
return $sprintf;
}正如您在购物车页面上看到的,它只更改了一个单词,而没有更改其他两个单词

好的,当我转到我的结账页面并转到页面时
这是我的结账页面(也未更改)

我已经在我的php函数中插入了这个不起作用
/*
* Change the string "Shipping" to "Delivery" on Order Received page.
*/
add_filter('gettext', 'translate_reply');
add_filter('ngettext', 'translate_reply');
function translate_reply($translated) {
$translated = str_ireplace('Shipping', 'Delivery', $translated);
return $translated;
}我还试着打开我的插件文件夹
我确实得到了一些代码,在那里我替换了运送到delviery的字符串,但它没有做任何事情!
return (
<FormStep
id="shipping-fields"
disabled={ checkoutIsProcessing }
className="wc-block-checkout__shipping-fields"
title={ __( 'Shipping address', 'woo-gutenberg-products-block' ) }
description={ __(
'Enter the physical address where you want us to deliver your order.',
'woo-gutenberg-products-block'
) }
>
{ children }
<CheckboxControl
className="wc-block-checkout__use-address-for-billing"
label={ __(
'Use same address for billing',
'woo-gutenberg-products-block'
) }
checked={ shippingAsBilling }
onChange={ ( isChecked ) => setShippingAsBilling( isChecked ) }
/>
</FormStep>有人能帮帮我吗?我只想把这句话改为送货。
发布于 2021-04-14 14:21:48
我确实使用了这段代码,但我必须删除woo commerce gutenberg块,我将其恢复为默认的woo commerce短码
add_filter('woocommerce_shipping_package_name', 'change_shipping_text_to_delivery', 20, 3 );
function change_shipping_text_to_delivery( $sprintf, $i, $package ) {
$sprintf = sprintf( _nx( 'Delivery', 'Delivery %d', ( $i + 1 ), 'delivery packages', 'woocommerce' ), ( $i + 1 ) );
return $sprintf;
}function shipchange( $translated_text, $text, $domain ) {
switch ( $translated_text ) {
case 'Ship to a different address?' :
$translated_text = __( 'Deliver to a different address?', 'woocommerce' );
break;
}
return $translated_text;
}
add_filter('gettext', 'shipchange', 20, 3);
add_filter( 'woocommerce_shipping_package_name' , 'woocommerce_replace_text_shipping_to_delivery', 10, 3);
/**
*
* Function to replace shipping text to delivery text
*
* @param $package_name
* @param $i
* @param $package
*
* @return string
*/
function woocommerce_replace_text_shipping_to_delivery($package_name, $i, $package){
return sprintf( _nx( 'Delivery', 'Delivery %d', ( $i + 1 ), 'shipping packages', 'put-here-you-domain-i18n' ), ( $i + 1 ) );
}
/*
* Change the string "Shipping" to "Delivery" on Order Received page.
*/
add_filter('gettext', 'translate_reply');
add_filter('ngettext', 'translate_reply');
function translate_reply($translated) {
$translated = str_ireplace('Shipping', 'Delivery', $translated);
return $translated;
}发布于 2021-04-14 04:01:38
试试下面这样的东西。这将使用筛选器挂钩来更改$fields数组中的值。在您的示例中,您将更改订单详细信息
add_filter( 'woocommerce_checkout_fields' , 'your_function' );
function your_function ( $fields ) {
$fields['shipping']['shipping_address']['label'] = "Delivery Address";
return $fields;
}这将放入您的functions.php文件中。
https://stackoverflow.com/questions/67018116
复制相似问题