在WooCommerce最近的一次更新中,他们将Discounts一词改为Coupon(s)。这是在订单总数表中。请看这张截图以了解清楚 https:/prnt.scsq6xfh
我想尽可能的把它改回 "折扣",因为当您实际应用了一个折扣时,说 "优惠券 "是没有意义的。理想的情况是,如果需要的话,显示 "折扣 "和 "优惠券 "这两行会更好,因为有时您可能会应用优惠券和折扣。
目前,我正试图改变上面截图中指出的Discount(s)标签。
我已经找到了插件核心文件中的代码,知道我不能改变,这是代码。
</tr>
<?php if ( 0 < $order->get_total_discount() ) : ?>
<tr>
<td class="label"><?php esc_html_e( 'Coupon(s):', 'woocommerce' ); ?></td>
<td width="1%"></td>
<td class="total">-
<?php echo wc_price( $order->get_total_discount(), array( 'currency' => $order->get_currency() ) ); // WPCS: XSS ok. ?>
</td>
</tr>
<?php endif; ?>
我不知道如何在上面的代码中通过我的functions.php将Coupon(s)改为Discounts。
任何帮助赞赏.CheersNik
您可以使用WordPress的 gettext
钩子这种方式。
add_filter('gettext', 'custom_strings_translation', 20, 3);
function custom_strings_translation( $translated_text, $text, $domain ) {
global $pagenow, $typenow;
// Settings
$current_text = "Coupon(s):";
$new_text = "Discount(s):";
// Targeting admin single order pages
if( is_admin() && in_array($pagenow, ['post.php', 'post-new.php']) && 'shop_order' === $typenow && $current_text === $text ){
$translated_text = __( $new_text, $domain );
}
return $translated_text;
}
代码在活动子主题(或活动主题)的function.php文件中。经过测试,可以使用。
相关答案。