Plone
关于 ONLYOFFICE 和 Plone 的集成
ONLYOFFICE 提供了一个官方连接器,将 ONLYOFFICE 文档 与 Plone 集成,可以在内容管理系统中编辑文档。您可以从 PyPi.org 和 ONLYOFFICE 的 GitHub 页面 下载 ONLYOFFICE 连接器。该连接器根据 Apache-2.0 许可证发布。
要了解更多关于 ONLYOFFICE 和 Plone 集成连接器的详细信息,请访问我们的 API 文档。
主要功能
- 创建、编辑和查看文本文档、电子表格和演示文稿。
- 实时协同编辑文档:两种协同编辑模式(快速和严格),修订模式,评论和内置聊天。
- JWT 支持以保护您的流量,确保只有具有适当权限的用户才能访问您的文档。
支持的格式
- 用于编辑:DOCX, XLSX, PPTX, PDF
- 用于查看:DJVU, DOC, DOCM, DOCX, DOT, DOTM, DOTX, EPUB, FB2, FODT, HTML, MHT, ODT, OTT, OXPS, PDF, RTF, TXT, XPS, XML, CSV, FODS, ODS, OTS, XLS, XLSB, XLSM, XLSX, XLT, XLTM, XLTX, FODP, ODP, OTP, POT, POTM, POTX, PPS, PPSM, PPSX, PPT, PPTM, PPTX
- 用于转换(下载为):DOC, DOCM, DOCX, DOT, DOTM, DOTX, EPUB, FB2, FODT, HTML, MHT, ODT, OTT, OXPS, PDF, RTF, XPS, XML, FODS, ODS, OTS, XLS, XLSB, XLSM, XLSX, XLT, XLTM, XLTX, FODP, ODP, OTP, POT, POTM, POTX, PPS, PPSM, PPSX, PPT, PPTM, PPTX
- 用于转换为 Office Open XML:DOC, DOCM, DOT, DOTM, DOTX, EPUB, FB2, FODT, HTML, MHT, ODT, OTT, OXPS, PDF, RTF, XPS, XML, FODS, ODS, OTS, XLS, XLSB, XLSM, XLT, XLTM, XLTX, FODP, ODP, OTP, POT, POTM, POTX, PPS, PPSM, PPSX, PPT, PPTM
4.1.0 版本中的新功能
新增
- 支持可填写的 PDF 表单。
- 新增 21 种语言的空文件模板:阿拉伯语 (ar-SA)、加泰罗尼亚语 (ca-ES)、丹麦语 (da-DK)、巴斯克语 (eu-ES)、芬兰语 (fi-FI)、加利西亚语 (gl-ES)、希伯来语 (he-IL)、匈牙利语 (hu-HU)、亚美尼亚语 (hy-AM)、印度尼西亚语 (id-ID)、马来语 (ms-MY)、书面挪威语 (nb-NO)、罗马尼亚语 (ro-RO)、僧伽罗语 (si-LK)、斯洛文尼亚语 (sl-SI)、阿尔巴尼亚语 (sq-AL)、塞尔维亚语西里尔文 (sr-Cyrl-RS)、塞尔维亚语拉丁文 (sr-Latn-RS)、土耳其语 (tr-TR)、乌尔都语 (ur-PK) 和繁体中文 (zh-TW)。
- 新增对 Plone 6.1 的支持。
- 改进了 JWT 有效期的配置。
- 更新了演示 ONLYOFFICE 文档服务器的 URL。
连接 ONLYOFFICE 文档到 Plone
要求
-
ONLYOFFICE 文档服务器 v6.1(服务器或云版本)或更高版本
您需要一个 ONLYOFFICE 文档实例,该实例可以从 Plone 和任何终端客户端解析和连接。它必须能够直接向 Plone 发送 POST 请求。
备注请参阅官方文档页面,了解更多关于安装 ONLYOFFICE 文档的信息。
-
Python 3.4 及更高版本
-
ONLYOFFICE 集成插件 3.0.1 或更高版本用于 Plone
为 Plone 安装 ONLYOFFICE 集成插件
如果您已安装了旧版本的插件(旧版本插件的先前名称为 onlyoffice.connector),请在安装新版本之前将其删除。如果您想安装旧版本,请在按照安装说明操作时使用 onlyoffice.connector 代替 onlyoffice.plone。
ONLYOFFICE 集成插件作为标准的 Plone 插件发布。推荐的安装方法是通过 Buildout。
-
将插件添加到 Buildout。
打开您的 Plone 实例的
buildout.cfg文件,并将onlyoffice.plone添加到 eggs 部分:[buildout]...eggs =onlyoffice.plone -
运行 Buildout。
通过在命令行中以非超级用户身份运行
buildout来应用更改:sudo -u plone_buildout /plone/zinstance/bin/buildout -
重启 Plone 实例。
重启您的 Plone 实例以加载新安装的插件:
sudo /plone/zinstance/bin/instance restart -
在 Plone 中启用插件。
在浏览器中打开您的 Plone 站点,作为管理员登录,并启用插件:
- 进入 站点设置 > 插件 部分。
- 在可用插件中找到 onlyoffice.plone。
- 按下 安装 按钮以启用它。
配置 Plone 的 ONLYOFFICE 集成插件
要配置插件:
-
进入 站点设置。
-
向下滚动到 插件配置 部分。
-
按下 ONLYOFFICE 配置 按钮。
-
在 文档编辑服务 字段中,指定 ONLYOFFICE 文档 所在的 URL 地址。
备注ONLYOFFICE 文档的地址必须可从 Plone 访问,同时 Plone 的地址也必须可从 ONLYOFFICE 文档访问。
-
在 密钥 字段中,指定用于签署数据的密钥。
备注从 ONLYOFFICE 文档 v7.2 开始,JWT 默认启用,并且密钥会自动生成。您还需要在 Plone 端启用它:在 ONLYOFFICE 文档配置文件 中找到您的密钥,然后在连接器设置中指定相同的密钥。有关更多详细信息,请参阅本文的为 ONLYOFFICE 和 Plone 集成启用 JWT 部分。
-
在 文档编辑服务的内部请求服务器地址 字段中,指定用于从 文档编辑服务 访问 Plone 的地址。
-
在 服务器的内部请求文档编辑服务地址 字段中,指定用于从 Plone 访问 文档编辑服务 的地址。

开发 Plone ONLYOFFICE 插件
-
克隆仓库并更改目录:
git clone --branch deploy git@github.com:ONLYOFFICE/onlyoffice-plone.gitcd onlyoffice-plone -
在包中创建一个 virtualenv。
-
使用 pip 安装依赖项。
-
运行 buildout:
virtualenv ../bin/pip install -r requirements.txt./bin/buildout -
在前台启动 Plone:
./bin/instance fg
如果您有一个正在运行的 Plone 实例,可以通过将项目文件添加到 src 目录来安装插件:
-
在 src 目录中创建 onlyoffice.plone 目录。
-
将通过 Git 接收到的项目文件放入 onlyoffice.plone 目录中。
-
编辑 buildout.cfg 文件:
[buildout]...eggs =onlyoffice.plonedevelop =src/onlyoffice.plone -
重新运行 buildout 以使更改生效:
./bin/buildout -
然后启动或重启您的 Plone 实例。
Plone 基于 Zope 服务器,不能以 root 用户身份运行。如果您打算以 root 用户身份运行它,必须提供一个有效用户指令。为此,请在 ./parts/instance/etc/zope.conf 中添加 effective-user < username > 行。
升级 Plone ONLYOFFICE 集成插件
-
如果您在 buildout.cfg 文件中指定了精确的插件版本(所谓的 固定,也是推荐的做法),例如 onlyoffice.plone = 1.0.0,请更新此引用以指向更新版本。如果未指定插件版本,则会自动加载最新版本:
[versions]...onlyoffice.plone = 1.0.1 -
运行 bin/buildout。等待新版本下载并安装。
-
在完成下一步之前,您的站点可能会出现失真甚至无法访问的情况。
-
导航到 插件 屏幕(在您的站点 URL 后添加 /prefs_install_products_form),在 升级 列表中选择 onlyoffice.plone 并点击 升级 onlyoffice.plone。
工作原理
ONLYOFFICE 集成遵循此处记录的 API。
- 用户导航到 Plone 中的文档并选择 ONLYOFFICE 编辑 操作。
- Plone 为 文档服务器 准备一个 JSON 对象,具有以下属性:
- url:ONLYOFFICE 文档 用于下载文档的 URL;
- callbackUrl:ONLYOFFICE 文档 用于通知文档编辑状态的 URL;
- key:UUID+修改时间戳,用于指示 ONLYOFFICE 文档 是否需要重新下载文档;
- title:文档标题(名称)。
- Plone 从 .pt 模板构建页面,填充所有这些值,以便客户端浏览器可以加载编辑器。
- 客户端浏览器向 ONLYOFFICE 文档 请求 JavaScript 库,并将上述属性的 DocEditor 配置发送给 ONLYOFFICE 文档。
- 然后 ONLYOFFICE 文档 从 Plone 下载文档,用户开始编辑。
- ONLYOFFICE 文档 向 callbackUrl 发送 POST 请求,通知 Plone 用户正在编辑文档。
- 当所有用户和客户端浏览器完成编辑时,他们关闭编辑窗口。
- 在 10 秒不活动后,ONLYOFFICE 文档 向 callbackUrl 发送 POST 请求,通知 Plone 客户端已完成编辑并关闭文档。
- Plone 下载文档的新版本,替换旧版本。
为 ONLYOFFICE 和 Plone 集成启用 JWT
为了保护文档免受未经授权的访问,ONLYOFFICE 编辑器使用 JSON Web Token (JWT)。在初始化 文档编辑器 和内部 ONLYOFFICE 文档服务 之间的命令交换时,令牌 会添加到配置中。密钥 用于签署 JSON Web Token 并在请求 ONLYOFFICE 文档 时验证令牌。
从 ONLYOFFICE 文档 v7.2 开始,JWT 默认启用,并且密钥会自动生成。您需要在 ONLYOFFICE 文档配置文件 中找到您的密钥,然后在连接器设置中指定相同的密钥。
步骤 1:在 ONLYOFFICE 文档配置文件 中找到您的密钥
-
使用任何可用的文本编辑器打开 local.json 文件。
-
对于 Linux -
/etc/onlyoffice/documentserver/local.json -
对于 Windows -
%ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json -
对于 Docker – 使用
docker exec -it <containerID> bash命令进入 ONLYOFFICE 文档容器并打开/etc/onlyoffice/documentserver/local.json或者,您可以使用以下命令在不打开 local.json 的情况下找到默认密钥:
sudo docker exec <containerID> /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'
local.json 文件应如下所示:
{"services": {"CoAuthoring": {"token": {"enable": {"request": {"inbox": true,"outbox": true},"browser": true}},"secret": {"inbox": {"string": "yoursecret"},"outbox": {"string": "yoursecret"},"session": {"string": "yoursecret"}}}}} -
-
true值在三个部分中指定。这意味着令牌验证已启用。services.CoAuthoring.token.enable.browserservices.CoAuthoring.token.enable.request.inboxservices.CoAuthoring.token.enable.request.outbox
-
自动生成的密钥在三个部分中指定。您可以用自己的密钥替换默认密钥。密钥必须在三个部分中相同。
services.CoAuthoring.secret.inbox.stringservices.CoAuthoring.secret.outbox.stringservices.CoAuthoring.secret.session.string
-
如果您进行了更改,请保存并重启服务以使配置更改生效。
supervisorctl restart all
步骤 2:在连接器设置中指定相同的密钥
在连接器设置中,在 密钥 字段中指定相同的密钥并保存设置。
连接到演示 ONLYOFFICE 文档
从 ONLYOFFICE 连接器版本 3.0.0 开始,您可以在 Plone 中尝试 ONLYOFFICE 在线编辑器,而无需安装 ONLYOFFICE 文档。
要开启连接,请勾选 连接到演示 ONLYOFFICE 文档服务器 复选框并点击 保存 按钮。
这是一个公共测试服务器,将在 30 天内可用。请勿在其中共享您的敏感数据。
在 Plone 中开始使用 ONLYOFFICE 文档
要创建文档:
-
在 内容 选项卡上,点击左侧的 在 ONLYOFFICE 中创建 菜单选项。
-
选择所需的文件类型:文档、电子表格或演示文稿。

-
将打开一个新的文档以供编辑。
要编辑文档:
-
在 内容 选项卡中找到所需的文档。

-
点击文档。
-
在打开的页面上,点击 ONLYOFFICE 编辑 菜单选项以打开文档进行编辑和/或查看。

要将文档转换为 Office Open XML 格式:
-
在 内容 选项卡中找到所需的文档。
-
点击文档。
-
在打开的页面上,点击 在 ONLYOFFICE 中转换 菜单选项。
备注请参阅可转换为 OOXML 的格式的完整列表。
-
点击 转换 按钮。

要创建 PDF 表单:
- 在 内容 选项卡上,点击左侧的 在 ONLYOFFICE 中创建 菜单选项。
- 选择 PDF 表单 选项。
- 将打开一个新的空白 PDF 表单以供编辑。使用 表单 选项卡添加字段类型:文本字段、组合框、下拉列表、复选框、单选按钮、图像、签名字段、电子邮件地址等。
要填写表单:
-
在 内容 选项卡中找到所需的表单。
-
点击表单。
-
在打开的页面上,点击 在 ONLYOFFICE 中填写表单 菜单选项。

要下载不同格式的文档:
-
在 内容 选项卡中找到所需的文档。
-
点击文档。
-
在打开的页面上,点击 操作 菜单选项并选择 下载为 菜单项。

-
从列表中选择所需的格式。
-
点击 下载 按钮。

要了解有关最常见问题及其解决方法的更多信息,请访问我们的故障排除指南。