# 扩展

WCPOS 支持通过扩展为销售点添加新功能。扩展目录可用于浏览可用扩展、直接从 POS 设置中安装扩展并管理更新。

专业版功能

安装和管理扩展需要 [WCPOS Pro](/zh-CN/getting-started/pro-license.md)。免费版会显示扩展目录，但会禁用安装和激活控件。

## 可用扩展[​](#available-extensions "直接链接到 可用扩展")

### 支付网关[​](#payment-gateways "直接链接到 支付网关")

专为线下 POS 使用设计的自定义结账网关。

[Stripe 终端通过 Stripe Terminal 硬件（S700、WisePOS E）进行线下刷卡支付。支持 MOTO 和模拟器模式。](/zh-CN/payment/gateways/stripe-terminal.md)

[SumUp 终端通过 SumUp 读卡器接受银行卡付款。](/zh-CN/payment/gateways/sumup-terminal.md)

[Vipps MobilePay 手机支付通过二维码或推送通知进行手机付款。Vipps（挪威），MobilePay（丹麦、芬兰）。](/zh-CN/payment/gateways/vipps-mobilepay.md)

[电子邮件发票通过电子邮件向客户发送付款链接，以便在线结算订单。](/zh-CN/payment/gateways/email-invoice.md)

想构建自己的网关？从[网关模板](/zh-CN/reference/gateway-template.md)开始，或查看[自定义网关概览](/zh-CN/payment/gateways/.md)获取完整列表。

### 多语言[​](#multilingual "直接链接到 多语言")

按语言筛选 POS 产品，避免已翻译的重复项出现在收银员搜索和目录网格中。

[WCPOS Polylang 集成Polylang 集成——为 WCPOS Pro 提供支持语言感知的产品同步和按店铺选择语言。](/zh-CN/extensions/polylang.md)

[WCPOS WPML 集成WPML 集成 — 将 POS 产品筛选为单一语言。](/zh-CN/extensions/wpml.md)

[WCPOS WP Multilang 集成WP Multilang 集成 — 将 POS 产品筛选为单一语言。](/zh-CN/extensions/wp-multilang.md)

### 优惠券和店铺余额[​](#coupons-and-store-credit "直接链接到 优惠券和店铺余额")

[WCPOS StoreApps Smart Coupons 集成在 WCPOS 中兑换 StoreApps Smart Coupons 店铺余额，并在收据中显示余额标签，以及在订单备注中保留审计历史。](/zh-CN/extensions/storeapps-smart-coupons.md)

### 库存[​](#inventory "直接链接到 库存")

[WCPOS ATUM 集成将 WCPOS Pro 店铺关联到 ATUM Multi-Inventory 库存位置，以按位置管理库存、定价和 SKU。](/zh-CN/extensions/atum.md)

## 浏览扩展[​](#browsing-extensions "直接链接到 浏览扩展")

从 `POS Settings > 扩展` 打开扩展目录（在某些版本中也标记为 **插件**）。

该目录以卡片网格显示可用扩展。每张卡片显示：

* **图标**（如果扩展未提供图标，则显示拼图块备用图标）
* **名称和版本**
* **描述**
* **分类徽章**
* **状态** — 已启用、未启用、有可用更新或未安装

### 筛选和搜索[​](#filtering-and-search "直接链接到 筛选和搜索")

使用顶部的**分类胶囊按钮**按分类筛选扩展。也可以使用**搜索字段**按名称、描述或标签查找扩展。

## 安装扩展[​](#installing-an-extension "直接链接到 安装扩展")

1. 打开 `POS Settings > 扩展`。
2. 找到所需扩展并点击**安装**。
3. 扩展将通过 WordPress 插件安装程序下载并安装。
4. 安装后，点击**启用**以启用它。

在后台，WCPOS 使用 WordPress 原生的 `Plugin_Upgrader` 处理安装，因此扩展会遵循与任何 WordPress 插件相同的流程。

## 激活和停用[​](#activating-and-deactivating "直接链接到 激活和停用")

每个已安装的扩展在其卡片上都有**激活**和**停用**按钮。

* **激活**会启用该扩展，使其可在 POS 中运行。
* **停用**会在不卸载的情况下禁用它。扩展文件会保留在您的服务器上，可随时重新激活。

## 更新扩展[​](#updating-extensions "直接链接到 更新扩展")

当已安装扩展有较新版本可用时，卡片会显示**有可用更新**徽章和**更新**按钮。

### 自动更新[​](#auto-updates "直接链接到 自动更新")

从目录安装的扩展**默认启用自动更新**。您可以在目录中通过扩展卡片为每个扩展开启或关闭自动更新。启用自动更新后，WordPress 会自动应用新版本，就像对已启用自动更新的插件所做的那样。

## 故障排除[​](#troubleshooting "直接链接到 故障排除")

### 按钮上的“需要 Pro”消息[​](#requires-pro-message-on-buttons "直接链接到 按钮上的“需要 Pro”消息")

在 WCPOS 免费版本中，安装、激活和更新按钮处于禁用状态。升级到 [WCPOS Pro](/zh-CN/getting-started/pro-license.md) 即可管理扩展。

### 扩展安装失败[​](#extension-fails-to-install "直接链接到 扩展安装失败")

* 检查你的 WordPress 服务器是否对 `wp-content/plugins` 目录具有写入权限。
* 确认你的服务器可以发起出站 HTTPS 请求（某些主机会阻止外部下载）。
* 查看 `WP Admin > POS > 支持 > 日志` 中的错误详细信息。

### 安装后未显示扩展[​](#extension-not-appearing-after-install "直接链接到 安装后未显示扩展")

* 刷新 POS——扩展列表最多会缓存 12 小时。
* 确认扩展已启用（已安装但未启用的扩展不会运行）。

### 目录未加载[​](#catalog-not-loading "直接链接到 目录未加载")

扩展目录从远程来源获取，并在本地缓存 12 小时。如果目录未加载：

* 检查服务器的互联网连接。
* 缓存过期后重试，或清除服务器的 transient 缓存。

***

## 面向开发者[​](#for-developers "直接链接到 面向开发者")

### 创建 POS 扩展[​](#creating-a-pos-extension "直接链接到 创建 POS 扩展")

WCPOS 扩展是一个标准 WordPress 插件，通过 WCPOS 钩子和 API 与 POS 集成。创建步骤如下：

1. **从 WordPress 插件开始。** 与任何 WooCommerce 或 WordPress 插件一样，扩展需要标准插件头和入口文件。
2. **与 WCPOS 集成。** 使用 WCPOS 提供的钩子和过滤器，为 POS 界面或后端添加功能。
3. **在 GitHub 上托管发布版本。** 扩展目录使用 GitHub Releases 跟踪版本并提供更新。

### 提交到目录[​](#submitting-to-the-directory "直接链接到 提交到目录")

扩展目录维护在 [`wcpos/extensions`](https://github.com/wcpos/extensions) GitHub 仓库中。若要列出扩展：

1. 查看仓库 README 中的目录格式和元数据要求。
2. 打开一个 pull request，将扩展的元数据添加到 `catalog.json`。
3. 合并后，所有 WCPOS Pro 用户都将在目录中看到该扩展。

### GitHub Release 约定[​](#github-release-conventions "直接链接到 GitHub Release 约定")

更新生命周期依赖 GitHub Releases：

* 使用语义化版本控制来**标记版本**（例如，`v1.0.0`、`v1.2.3`）。
* 将**插件 ZIP 文件附加**为发布资源 — 这是用户安装或更新时会下载的文件。
* **发布该版本**（不是草稿），以便目录可以检测到它。

发布新版本后，已安装该扩展的用户会在其扩展目录中看到可用更新。如果启用了自动更新，更新将自动应用。

有关目录 schema 和提交流程的完整详情，请参阅 [`wcpos/extensions`](https://github.com/wcpos/extensions) 仓库。
