WPML

有关翻译商店内容的信息,请参阅如何在 WordPress 中翻译 WooCommerce

开始之前

安装并激活:

多货币功能无需次要语言即可运行。您的商店不必是多语言网站也能使用它。如果您只需在单语言商店中使用多货币,WordPress.org 上免费的 WooCommerce Multilingual 插件也可以独立处理。

为您的商店启用多货币

要在 WooCommerce 中启用多货币,请打开 WPML > 设置 > 多货币,并将“启用多货币模式”开关切换为开启状态。接着添加您希望用于销售的每种货币。为每种货币设置符号位置、小数分隔符、千位分隔符和小数位数。价格格式应符合该市场购物者的期望。

您的默认货币仍然是在 WooCommerce 自身设置(WooCommerce > 设置 > 常规)中配置的货币。您在多货币设置中添加的其他货币可供客户切换使用。

设置每种货币的价格或使用自动转换

要在多货币 WooCommerce 商店中设置每种货币的价格,请在手动设置每种货币的价格或自动汇率转换之间进行选择。这两个选项针对每种货币独立生效。您可以为某些货币混合使用手动价格,为其他货币使用自动转换,或者全程使用一种方法。

手动设置每种货币的价格 – 客户期望的规整数字

明确设置每个产品在每种货币下的价格。$20 的产品变成欧元 €19.99 和日元 ¥3,000。客户看到的是他们熟悉的规整数字,而不是实时汇率换算的结果。您可以在每个产品的编辑屏幕上,在与 WooCommerce 标准价格字段并排显示的多货币面板中设置手动价格。

对于大多数向成熟市场销售的商店来说,手动定价是正确的选择。它可以让您有针对性地为每个市场定价。在某些市场提供折扣,在其他市场收取溢价。您无需让昨天的汇率决定一切。

根据源价格自动转换

只需设置一次源价格。兼容性插件会应用汇率并在每种货币中显示转换后的价格。在 WPML > 设置 > 多货币的“自动汇率”部分配置汇率。您可以手动设置汇率,或者按照您选择的时间表从已配置的来源实时获取汇率。

对于目录快速变化或拥有多种货币的商店来说,自动转换是正确的选择,因为手动设置每个价格是不切实际的。

显示货币切换器 – 小工具、区块或简码

要在 WooCommerce 商店中显示货币切换器,您有三种放置选项。选择适合您希望切换器出现位置的任何一种。

  • 区块。通过 WordPress 区块编辑器将货币切换器区块拖放到任何页面或文章中。
  • 小工具。通过外观 > 小工具货币切换器小工具拖到任何小工具区域。
  • 简码。[currency_switcher] 粘贴到您希望切换器出现的任何页面、文章或模板中。

WPML > 设置 > 多货币的“货币切换器选项”部分配置切换器的外观。您可以选择下拉菜单、并排或列表。您也可以选择仅符号、仅代码或两者兼有。这些设置适用于每个放置位置。

货币切换器简码参考

[currency_switcher] 简码接受以下属性:

  • format。控制每种货币的呈现方式。标记:%name(完整货币名称,例如 Euro),%symbol(例如 ),%code(例如 EUR),%subtotal(该货币的购物车小计)。示例:[currency_switcher format="%name (%symbol)"] 呈现为 Euro (€)
  • switcher_style。视觉样式。值:wcml-dropdownwcml-dropdown-clickwcml-horizontal-listwcml-vertical-list

包含这两个属性的示例:

[currency_switcher format="%code %symbol" switcher_style="wcml-dropdown"]

如需进行更深入的自定义(例如构建您自己的切换器模板),开发者可以参考单独的模板文件参考。

按国家/地区和货币显示不同的支付网关

要按货币路由支付网关,请打开 WPML > 设置 > 多货币,然后在“货币”表格中单击每种货币的“编辑”。每种货币都会列出可用的支付网关及复选框。启用适用于该货币的网关。禁用不适用的网关。客户只会看到适用于其支付货币的付款选项。

这是处理在多个地区销售的商店的正确方法。您的默认 Stripe 帐户可能处理美元,而区域 Stripe 帐户或本地网关处理另一种货币。以每种货币付款的客户将看到与该货币绑定的网关,而不是同时看到所有网关。

根据访客位置自动切换货币

要根据访客位置自动切换货币,请打开 WPML > 设置 > 多货币,并在“货币”部分下,在“显示货币基于”中选择“客户位置”(而不是“网站语言”)。此选项需要 MaxMind 许可证密钥以进行基于 IP 的国家/地区检测。然后,插件会检测访客所在的国家/地区,并默认显示该国家/地区的货币。您可以在同一设置面板中将每个国家/地区映射到一种货币。

如果您在页面中添加了货币切换器,客户仍然可以手动切换。两者可以协同工作。位置检测设置默认货币。切换器可用于覆盖默认设置。

WooCommerce Subscriptions、Bookings 及其他扩展产品类型

多货币功能支持主要的 WooCommerce 扩展产品类型。在正式上线之前,需要确认每种类型自身的行为。

  • WooCommerce Subscriptions。定期订阅产品支持多货币定价。以与设置产品价格相同的方式设置每种货币的订阅价格。续订付款将以客户订阅时使用的货币进行处理。
  • WooCommerce Bookings。可预订产品价格、押金金额和按资源计算的成本均支持按货币定价。预订确认在整个过程中都会显示客户的货币。
  • Product Bundles、Composite Products、Mix and Match。捆绑包和组件产品遵循父产品的货币和价格配置。

对于任何扩展产品类型,请在发布前使用每种货币端到端地测试一次示例购买。多货币设置在各个扩展中运行一致。针对特定扩展的定价规则(押金、付款计划、捆绑折扣)可能会产生相互影响,您需要对此进行验证。

在更改货币或语言时处理购物车

当客户在会话中途切换货币或语言时,他们的购物车中仍保留着以之前货币定价的商品。WPML 5 允许您分别为每种情况选择购物车的行为。打开 WPML > 设置 > WCML,并滚动到“购物车”部分。

您会看到两对单选按钮:

  • 购物车中有商品时切换语言。选择“切换语言时同步购物车内容”以保留购物车并对其商品重新定价,或者选择“提示确认并重置购物车”以在重置前询问客户。
  • 购物车中有商品时切换货币。对于货币更改,也有相同的两个选项。

购物车同步需要 WPML 语言 cookie。如果它被禁用,该部分会显示一条内联通知,链接到 WPML > 设置 > 语言 > 浏览器语言重定向,您可以在那里启用 cookie。

常见陷阱

  • 已启用多货币但未显示任何货币。WPML > 设置 > 多货币 > 货币中,在默认货币之外至少添加一种货币。只有配置的货币才会显示在切换器中。
  • 货币切换器简码未呈现任何内容。确认已启用多货币并至少添加了一种货币。如果不存在替代货币,简码将呈现一个空的切换器。
  • 针对货币显示了错误的网关。重新检查每种货币的网关设置(在“货币”表格中单击每种货币的“编辑”)。每种货币都会列出可用的网关,并且需要针对每种货币明确启用。
  • 客户位置返回错误的货币。此选项使用 MaxMind 许可证密钥进行基于 IP 的检测。GeoIP 数据库偶尔会分类错误。您的托管服务提供商也可能缓存来自 CDN 边缘节点的 IP。请使用全新的浏览器会话进行测试,并确认您的主机传递了真实的访客 IP。
  • 价格看起来正确但税费错误。WooCommerce 的按位置计税设置适用于基于货币的价格之上。请在 WooCommerce > 设置 > 税费中单独配置税率类别。

作者:Amir · 最后更新于 2026年7月2日

作者:Amir · 最后更新时间:2026年7月2日