如何在结帐时更改 WooCommerce 文本运送

How to change WooCommerce text shipping in checkout

我正在尝试将 WooCommerce 结帐页面中的文本从 Shipping 更改为 Delivery from Your Order节。我试图打开 FTP 中的核心文件并尝试手动更改它,但我无法在任何地方找到文本。关于如何更改它的任何帮助?

如果您将需要编辑的文件从 wp-content/plugins/woocommerce/templates 复制到 wp-content/themes/*your_theme*/woocommerce。这样你就可以在不触及插件代码的情况下覆盖代码。

您会发现需要更改的代码位于 wp-content/themes/*your_theme*/woocommerce/checkout 下,但如果您想要更改 Shipping 一词的所有实例,则需要更改更多模板。

包含 Shipping 的文件列表是

woocommerce/cart/cart-shipping.php

woocommerce/cart/cart-totals.php

woocommerce/cart/shipping-calculator.php

woocommerce/checkout/form-billing.php

woocommerce/checkout/form-login.php

woocommerce/emails/email-addresses.php

woocommerce/emails/plain/email-addresses.php

woocommerce/myaccount/form-edit-address.php

woocommerce/myaccount/my-address.php

woocommerce/order/order-details.php

可能还有更多,因此您必须在其他模板文件中进行搜索。

你试过下面这样吗:

// Add this to your functions.php

add_filter('gettext', 'translate_reply');
add_filter('ngettext', 'translate_reply');

function translate_reply($translated) {
$translated = str_ireplace('Shipping', 'Delivery', $translated);
return $translated;
}

也请参阅此link:http://businessbloomer.com/woocommerce-edit-translate-shipping-handling-cart-checkout-page/了解更多详情

我使用了@Rahul S 的解决方案,但我添加了下一个代码来更改购物车和结帐时的特定交付文本。

我将此代码添加到我主题的 function.php 中。它适用于购物车页面结帐页面

您可以将“put-here-you-domain-i18n”替换为您的域,默认情况下它是“woocommerce”,我建议更改它。

要添加的代码是:

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 ) );
}

希望对你有帮助

可以看到this.

我可以看到这是一个较旧的线程,但它有我正在寻找的答案。我扩展了@Rahul S 的解决方案,因此如果需要,一个函数可以翻译多个字符串。它是我在 ModernTribe 的事件日历中使用的功能的修订版。在美国,我用 "Shipping and Handling" 代替 "Delivery."

add_filter('gettext', 'zgwd1010_woo_translations', 20, 3);
add_filter('ngettext', 'zgwd1010_woo_translations', 20, 3);
function zgwd1010_woo_translations( $translation, $text, $domain ) {

    // Put your custom text here in a key => value pair
    $custom_text = array(
        'Shipping:' => 'Shipping and Handling:',
    );

    if( array_key_exists( $translation, $custom_text ) ) {
        $translation = $custom_text[$translation];
    }
    return $translation;
}