WooCommerce, 實用技巧

變更 WooCommerce 導覽標記「商店」為任意字串

變更 WooCommerce 導覽標記「商店」為任意字串

在使用 WooCommerce 架設線上商店時,預設的商店頁面名稱通常是「商店」或「Shop」。但這樣的字詞對許多品牌來說過於通用,不夠個性化。在某一些案子中,有一些是型錄的模式的電商網站,會有特殊需求要將「商店」改成「產品目錄」,這時候就很麻煩啦。

說是要硬幹硬翻字串也是可以,但顯得這不太優雅,秉持我們的一貫風格,優雅的解決許多 WordPress 的問題,讓我們逐一教學。

先弄懂你要改的

這篇教學是要改寫 WooCommerce 的預設頁面名稱「商店 / Shop」,包含:

  • WooCommerce 頁面標題

  • Elementor Pro 導覽標記、麵包屑(Breadcrumbs)

  • WooCommerce 的內建導覽標記、麵包屑

  • 其他介面上可能出現的「商店」字串

並將其統一變更為 「產品目錄」 或你想要的名稱。

為什麼要這樣做?

  1. 品牌一致性:根據品牌語調,你可能更傾向使用「商品專區」、「產品一覽」或其他名稱。

  2. 提升 UX:使用更貼近使用者語言的標題,可以讓訪客更快理解內容頁面。

  3. SEO 考量:你可以將頁面命名為關鍵字更相關的字詞,例如「線上選購」、「優惠商品」等。

哪裡改?

你可以將下列程式碼加入主題的 functions.php 檔案,或透過 Code Snippet 外掛方式實作。適用於:

/**
 * WooCommerce「商店 / Shop」→「產品目錄」
 * 相容 Elementor Pro Breadcrumbs
 * -------------------------------------------
 * 1) Shop 頁標題 (woocommerce_page_title)
 * 2) Elementor 產生的麵包屑 (elementor_pro/utils/woocommerce/breadcrumbs)
 * 3) WooCommerce get_breadcrumb (保險)
 * 4) 其他翻譯字串 (gettext / ngettext)
 */

/* === 1) Shop 頁標題 === */
add_filter( 'woocommerce_page_title', function( $title ) {
    return ( $title === '商店' || $title === 'Shop' ) ? '產品目錄' : $title;
}, 10);

/* === 2) Elementor Pro Utilities 先攔 === */
add_filter( 'elementor_pro/utils/woocommerce/breadcrumbs', function( $crumbs ) {
    foreach ( $crumbs as &$crumb ) {
        if ( isset( $crumb[0] ) && ( $crumb[0] === '商店' || $crumb[0] === 'Shop' ) ) {
            $crumb[0] = '產品目錄';
        }
    }
    return $crumbs;
}, 20 );

/* === 3) WooCommerce get_breadcrumb (雙保險) === */
add_filter( 'woocommerce_get_breadcrumb', function( $crumbs ) {
    foreach ( $crumbs as $i => $crumb ) {
        if ( isset( $crumb[0] ) && ( $crumb[0] === '商店' || $crumb[0] === 'Shop' ) ) {
            $crumbs[$i][0] = '產品目錄';
        }
    }
    return $crumbs;
}, 999 );   // 用高優先序,確定排在 Elementor 之後

/* === 4) 其他翻譯字串保險 === */
function trbio_gettext_shop_to_catalog( $translated, $original, $domain ) {
    if ( $domain === 'woocommerce' && ( $translated === '商店' || $translated === 'Shop' ) ) {
        return '產品目錄';
    }
    return $translated;
}
add_filter( 'gettext',  'trbio_gettext_shop_to_catalog', 20, 3 );
add_filter( 'ngettext', 'trbio_gettext_shop_to_catalog', 20, 3 );
  • 一般 WooCommerce 主題

  • 搭配 Elementor Pro 使用者

  • 不論中文或英文環境皆可運作

變更 WooCommerce 導覽標記「商店」為任意字串

這樣就可以很簡單的改動成功,難度很低的,試看看吧!