Plone 集成
该插件允许用户在 Plone 中借助 ONLYOFFICE 文档编辑办公文档。
功能特性
- 目前,可编辑的文档格式有:DOCX、XLSX、PPTX。
- 仅支持查看的文档格式如下:DJVU、DOC、DOCM、DOT、DOTM、DOTX、EPUB、FB2、FODT、HTML、MHT、ODT、OTT、OXPS、PDF、RTF、TXT、XPS、XML、CSV、FODS、ODS、OTS、XLS、XLSB、XLSM、XLT、XLTM、XLTX、FODP、ODP、OTP、POT、POTM、POTX、PPS、PPSM、PPSX、PPT、PPTM。
- 支持转换(另存为)的文档格式如下: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。
- 该插件会在文档库中为 Office 文档创建一个新的 ONLYOFFICE 编辑菜单项。这使得多个用户能够实时协作,并将更改保存回 Plone。
安装 ONLYOFFICE 文档
您需要一个 ONLYOFFICE 文档(文档服务器)实例,该实例必须能从 Plone 和任何终端客户端解析并连接。如果无法满足此条件,请使用官方的 ONLYOFFICE 文档安装指南。ONLYOFFICE 文档还必须能够直接向 Plone 发送 POST 请求。
使用 Docker 是启动 ONLYOFFICE 文档实例的最简单方法。
安装 Plone ONLYOFFICE 集成插件
要在 Plone 中使用 ONLYOFFICE 文档,必须执行以下步骤:
-
安装说明可在安装 Plone 附加组件中找到。
-
前往站点设置 -> 附加组件,然后点击安装按钮来启用插件。
您也可以通过 Docker 安装插件:
docker run -p 8080:8080 -e ADDONS="onlyoffice.plone" plone/plone-backend:6.0 start
请注意,如果您之前安装过旧版本的插件(早期使用onlyoffice.connector这个旧名称的插件版本),请在安装新版本之前将其卸载。
配置 Plone ONLYOFFICE 集成插件
要配置插件,请前往站点设置。向下滚动到附加组件配置部分,然后点击 ONLYOFFICE 配置按钮。
从 7.2 版本开始,JWT 默认启用,并且会自动生成密钥,用于限制对 ONLYOFFICE 文档的访问,保障安全性和数据完整性。在 Plone 配置页面指定您自己的密钥。在 ONLYOFFICE 文档的配置文件中,指定相同的密钥并启用验证。
开发 Plone ONLYOFFICE 插件
运行以下命令从本地存储库安装附加组件:
docker run -p 8080:8080 -e DEVELOP="/app/src/onlyoffice.plone" -v /path/to/onlyoffice.plone:/app/src/onlyoffice.plone plone/plone-backend:6.0 start
更多信息,请参阅开发包变量。
升级 Plone ONLYOFFICE 集成插件
-
如果您在buildout.cfg文件中指定了具体的插件版本(所谓的锁定版本,这是一种推荐做法),例如onlyoffice.plone = 1.0.0,请更新该引用以指向较新版本。如果未指定插件版本,那么将自动加载最新版本:
[versions]onlyoffice.plone = 1.0.1 -
运行bin/buildout。等待新版本下载并安装完成。
-
重启 Plone。在执行下一步操作之前,您的站点可能会显示异常,甚至无法访问。
-
导航到附加组件界面(在站点 URL 后添加 /prefs_install_products_form),在升级列表中选择 onlyoffice.plone,然后点击升级onlyoffice.plone。
工作原理
ONLYOFFICE 集成遵循此处记录的 API 规范。
-
用户在 Plone 中找到文档,并选择 ONLYOFFICE 编辑操作。
-
Plone 为 ONLYOFFICE 文档准备一个包含以下属性的 JSON 对象:
- url:ONLYOFFICE 文档用于下载文档的 URL;
- callbackUrl:ONLYOFFICE 文档用于通知文档编辑状态的 URL;
- key:由UUID+Modified Timestamp组成,用于指示 ONLYOFFICE 文档是否需要重新下载文档;
- title:文档标题(名称)。
-
Plone 从 .pt 模板构建一个页面,填充所有这些值,以便客户端浏览器可以加载编辑器。
-
客户端浏览器向 ONLYOFFICE 文档的 JavaScript 库发出请求,并将包含上述属性的 DocEditor 配置发送给 ONLYOFFICE 文档。
-
然后,ONLYOFFICE 文档从 Plone 下载文档,用户开始编辑。
-
ONLYOFFICE 文档向callbackUrl发送 POST 请求,通知 Plone 有用户正在编辑文档。
-
当所有用户和客户端浏览器完成编辑后,他们关闭编辑窗口。
-
在10 秒无操作后,ONLYOFFICE 文档向callbackUrl发送 POST 请求,告知 Plone 客户端已完成文档编辑并关闭了它。
-
Plone 下载文档的新版本,替换旧版本。
在此处下载 Plone ONLYOFFICE 集成插件。