1. 程式人生 > >修改購物車頁或結帳頁中 ‘運送方式 1′ 的翻譯為’運送方式’

修改購物車頁或結帳頁中 ‘運送方式 1′ 的翻譯為’運送方式’

這篇要教大家怎麼修改 ‘運送方式1’ 為 ‘運送方式’.

前言:

有些網站可能有多個運送方式,有些網站沒有,我相信幾乎大多數的小網站只會用到「一組」,不會用到第2組的運送方式,一組裡就已經有多個專案了,相信就很夠用,但WooCommerce 設計上又要弄的有彈性給更多的人使用,要解決這個問題,有多種解法。

我覺得最好的解法是  所提供的,增加下面這段hook 的function 到 functions.php:

// change 運送方式1 to 運送方式
// define the woocommerce_shipping_package_name callback 
function filter_woocommerce_shipping_package_name( $sprintf, $i, $package ) { 
 // make filter magic happen here... 
 return '運送方式';
}; 
add_filter( 'woocommerce_shipping_package_name', 'filter_woocommerce_shipping_package_name', 10, 3 );

WooCommerce 實際用到的程式碼:includes/wc-cart-functions.php

// @codingStandardsIgnoreStart
'package_name' => apply_filters( 'woocommerce_shipping_package_name', sprintf( _nx( 'Shipping', 'Shipping %d', ( $i + 1 ), 'shipping packages', 'woocommerce' ), ( $i + 1 ) ), $i, $package ),

我之前的解法是透過「Loco Translate」外掛來解決,去置換掉翻譯用的語言對應檔,但這個解法的問題在,官方更新了新的版本的語言對應檔之後,我們的設定值又會被蓋過去,變成每次更新完又要去重新修改一次,如果是修改 functions.php 就可以解決這個問題。

資料來源:

購物車截圖: