如何向 WooCommerce 商店添加多货币和支付网关
了解如何使用 WPML 在您的 WooCommerce 商店中设置多货币。这包括启用多货币、设置每种货币的价格(或使用自动汇率转换)、显示货币切换器(区块、小工具或简码)、将不同的支付网关路由到不同的国家/地区,以及根据访问者位置自动切换货币。无论您的商店是单语言还是多语言,多货币功能都可以使用。
有关翻译商店内容的信息,请参阅如何在 WordPress 中翻译 WooCommerce。
开始之前
安装并激活:
- WooCommerce,在 WooCommerce设置常规 中设置商店的默认货币,并且至少有一个已发布的产品。
- WPML 核心以及 WPML Multilingual & Multicurrency for WooCommerce 兼容性附加组件。从您的 WPML 帐户下载页面下载该附加组件。
多货币功能无需次要语言即可使用。您的商店无需是多语言网站也能使用它。如果您只需要在单语言商店中使用多货币功能,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-dropdown、wcml-dropdown-click、wcml-horizontal-list、wcml-vertical-list。
包含这两个属性的示例:
[currency_switcher format="%code %symbol" switcher_style="wcml-dropdown"]
对于更深层次的自定义(例如构建您自己的切换器模板),有单独的面向开发人员的模板文件参考。
按国家/地区和货币显示不同的支付网关
要按货币路由支付网关,请打开 WPML设置多货币,然后在货币表格中单击每种货币的“编辑”。每种货币都会列出可用的支付网关并带有复选框。启用适用于该货币的网关。禁用不适用的网关。客户只会看到适用于其支付货币的支付选项。
这是处理在多个地区销售的商店的正确方法。您的默认 Stripe 帐户可能处理美元,而区域 Stripe 帐户或本地网关处理另一种货币。以每种货币支付的客户会看到与该货币绑定的网关,而不是同时看到所有网关。
根据访问者位置自动切换货币
要根据访问者位置自动切换货币,请打开 WPML设置多货币,然后在货币部分,在“根据以下条件显示货币”下选择“客户端位置”(而不是“网站语言”)。此选项需要 MaxMind 许可证密钥来进行基于 IP 的国家/地区检测。然后,插件会检测访问者的国家/地区,并默认显示该国家/地区的货币。您可以在同一设置面板中将每个国家/地区映射到一种货币。
如果您在页面中添加了货币切换器,客户仍然可以手动切换。两者可以协同工作。位置检测设置默认货币。切换器则可用于覆盖默认设置。
WooCommerce Subscriptions、Bookings 和其他扩展产品类型
多货币功能可与主要的 WooCommerce 扩展产品类型协同工作。每种类型都有其自身的行为模式,在上线前需要进行确认。
- WooCommerce Subscriptions。定期订阅产品遵循多货币定价。WPML Multilingual & Multicurrency for WooCommerce 会自动将订阅计划的价格转换为每种货币。要手动设置价格,请使用手动设置计划价格弹出窗口,正如将 WooCommerce Subscriptions 与 WPML 结合使用中所述。续订付款将以客户订阅时使用的货币进行处理。
- 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设置税费 中单独配置税率类别。