版本:2.x扩展
Flarum 设计简洁,但扩展性极强。事实上,随 Flarum 发布的多数功能其实都是扩展!
这种设计让 Flarum 拥有极高的可定制性:你可以禁用不需要的功能,并安装其他扩展,让论坛完美契合你的社区需求。
如果你想了解 Flarum 关于核心功能设计的理念,或者希望开发自己的扩展,请参阅我们的扩展文档。
本文主要介绍如何从论坛管理员的角度管理扩展。
扩展管理器
扩展管理器是 Flarum 在通过压缩包安装时自带的扩展。它提供了一个图形界面,用于安装和更新扩展及 Flarum 本身(主要版本内)。跨主要版本升级(例如从 1.x 到 2.0),需要在命令行中使用 Composer:参见升级指南。
如果你尚未安装扩展管理器并希望安装,可在 Flarum 目录中运行以下命令:
composer require flarum/extension-manager:"*"
警告:扩展管理器允许管理员安装任意 composer 包。只有在您信任所有论坛管理员拥有此类权限的前提下,才应安装扩展管理器。
寻找扩展
Flarum 拥有丰富的扩展生态,其中大部分都是开源且免费的。扩展管理器提供了发现功能,让您可以搜索可用扩展。扩展管理器会连接到 flarum.org/extensions。您也可以前往 Flarum 社区论坛的 Extensions 标签页浏览。
安装扩展
通过界面安装
借助扩展管理器扩展,您可以直接在后台管理面板安装扩展。浏览上面链接中的可用扩展列表并找到想安装的扩展后,在该扩展管理器的安装输入框中填入扩展的 composer 包名即可完成安装。
通过命令行安装
与 Flarum 本身一样,扩展通过 SSH 使用 Composer 安装。安装一个常规扩展的步骤:
cd 进入 Flarum 目录。该目录应包含 composer.json、flarum 文件和 storage 目录等。您可以通过 ls -la 查看目录内容。
运行 composer require COMPOSER_PACKAGE_NAME:*。包名一般由扩展的文档提供。
更新扩展
通过界面更新
借助扩展管理器扩展,您可以直接在后台管理面板更新扩展。点击扩展管理器中的"Check for updates"按钮即可检查更新。如果有可用更新,点击"Global update"按钮可更新所有扩展,也可以点击某个扩展旁边的"Update"按钮单独更新。
通过命令行更新
按照扩展开发者提供的说明操作即可。如果您使用 * 作为扩展的版本号(推荐做法),那么执行 Flarum 升级指南中列出的命令就会一并更新所有扩展。
卸载扩展
通过界面卸载
借助扩展管理器扩展,您可以直接在后台管理面板卸载扩展。进入扩展页面,点击想卸载的扩展旁边的"Uninstall"按钮即可。
通过命令行卸载
与安装类似,卸载扩展的步骤:
如果想删除扩展创建的所有数据库表,请点击后台管理面板中的"Purge"按钮,更多信息见下文。
cd 进入 Flarum 目录。
运行 composer remove COMPOSER_PACKAGE_NAME。包名一般由扩展的文档提供。
管理扩展
后台管理面板中每个扩展的详情页都提供了便捷的管理功能,您可以:
启用或禁用扩展。
查看并修改扩展提供的设置。
回滚扩展的迁移,删除其对数据库所做的修改(通过 Purge 按钮完成)。这会删除与该扩展相关的所有数据,且不可恢复。只应在卸载扩展且不打算再安装时使用,而且这一步完全可选。
查看扩展的 README(如果有的话)。
查看扩展的版本。
在安装了扩展管理器的情况下,卸载扩展。
配置额外的扩展仓库源
扩展管理器底层使用 composer,因此它会在与 composer 相同的位置查找扩展包,默认是 Packagist。不过您也可以为扩展管理器配置额外的查找来源,这对安装 Packagist 上没有的扩展很有用。
在扩展管理器的管理页面中,点击 Add Repository 按钮会弹出一个对话框,在其中填写要添加的仓库名称和 URL 即可。名称只是仓库的标签,可以随意填写;URL 则是仓库的地址,具体取决于要添加的仓库类型。
从 VCS 添加仓库
如果要添加来自 VCS 的仓库(如 GitHub、GitLab、BitBucket 等),URL 应为该仓库的 VCS 地址。例如,如果您有一个私有 GitHub 仓库 https://github.com/acme/flarum-extension,就把该地址填入 URL 字段。如果是私有源,还需要通过 New authentication method 按钮配置认证方式。令牌可在 VCS 提供商的网站上生成,host 则填 VCS 提供商的域名(如 github.com)。
添加 composer 仓库
Extiverse 提供付费扩展的访问渠道,是 composer 仓库的一个典型例子。URL 填 https://flarum.org/composer/,名称填 premium。同样需要通过 New authentication method 按钮配置认证方式。令牌可在 Flarum 账户的订阅页面点击 Instructions 按钮生成。
Type: HTTP Bearer
Host: flarum.org
信息:这里配置的仓库和认证方式对命令行和后台管理面板都生效。但如果通过命令行配置,切勿添加 --global 标志。
安装非稳定版扩展
如果出于某些原因想安装非稳定版扩展(如 beta、alpha 或 RC 版本),必须先把 Minimum stability 设置更新为所需的稳定性级别。
设为 Alpha 时,可安装 alpha、beta、RC(候选版本)和 stable 版本。
设为 Beta 时,可安装 beta、RC 和 stable 版本。
设为 RC 时,可安装 RC 和 stable 版本。
设为 Stable 时,只能安装 stable 版本。