跳到主要内容

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。

  1. 将插件添加到 Buildout。

    打开您的 Plone 实例的 buildout.cfg 文件,并将 onlyoffice.plone 添加到 eggs 部分:

    [buildout]
    ...
    eggs =
    onlyoffice.plone
  2. 运行 Buildout。

    通过在命令行中以非超级用户身份运行 buildout 来应用更改:

    sudo -u plone_buildout /plone/zinstance/bin/buildout
  3. 重启 Plone 实例。

    重启您的 Plone 实例以加载新安装的插件:

    sudo /plone/zinstance/bin/instance restart
  4. 在 Plone 中启用插件。

    在浏览器中打开您的 Plone 站点,作为管理员登录,并启用插件:

    • 进入 站点设置 > 插件 部分。
    • 在可用插件中找到 onlyoffice.plone。
    • 按下 安装 按钮以启用它。

配置 Plone 的 ONLYOFFICE 集成插件​

要配置插件:

  1. 进入 站点设置。

  2. 向下滚动到 插件配置 部分。

  3. 按下 ONLYOFFICE 配置 按钮。

  4. 在 文档编辑服务 字段中,指定 ONLYOFFICE 文档 所在的 URL 地址。

    备注

    ONLYOFFICE 文档的地址必须可从 Plone 访问,同时 Plone 的地址也必须可从 ONLYOFFICE 文档访问。

  5. 在 密钥 字段中,指定用于签署数据的密钥。

    备注

    从 ONLYOFFICE 文档 v7.2 开始,JWT 默认启用,并且密钥会自动生成。您还需要在 Plone 端启用它:在 ONLYOFFICE 文档配置文件 中找到您的密钥,然后在连接器设置中指定相同的密钥。有关更多详细信息,请参阅本文的为 ONLYOFFICE 和 Plone 集成启用 JWT 部分。

  6. 在 文档编辑服务的内部请求服务器地址 字段中,指定用于从 文档编辑服务 访问 Plone 的地址。

  7. 在 服务器的内部请求文档编辑服务地址 字段中,指定用于从 Plone 访问 文档编辑服务 的地址。

ONLYOFFICE_configure

开发 Plone ONLYOFFICE 插件​

  1. 克隆仓库并更改目录:

    git clone --branch deploy git@github.com:ONLYOFFICE/onlyoffice-plone.git
    cd onlyoffice-plone
  2. 在包中创建一个 virtualenv。

  3. 使用 pip 安装依赖项。

  4. 运行 buildout:

    virtualenv .
    ./bin/pip install -r requirements.txt
    ./bin/buildout
  5. 在前台启动 Plone:

    ./bin/instance fg

如果您有一个正在运行的 Plone 实例,可以通过将项目文件添加到 src 目录来安装插件:

  1. 在 src 目录中创建 onlyoffice.plone 目录。

  2. 将通过 Git 接收到的项目文件放入 onlyoffice.plone 目录中。

  3. 编辑 buildout.cfg 文件:

    [buildout]
    ...
    eggs =
    onlyoffice.plone
    develop =
    src/onlyoffice.plone
  4. 重新运行 buildout 以使更改生效:

    ./bin/buildout
  5. 然后启动或重启您的 Plone 实例。

Plone 基于 Zope 服务器,不能以 root 用户身份运行。如果您打算以 root 用户身份运行它,必须提供一个有效用户指令。为此,请在 ./parts/instance/etc/zope.conf 中添加 effective-user < username > 行。

升级 Plone ONLYOFFICE 集成插件​

  1. 如果您在 buildout.cfg 文件中指定了精确的插件版本(所谓的 固定,也是推荐的做法),例如 onlyoffice.plone = 1.0.0,请更新此引用以指向更新版本。如果未指定插件版本,则会自动加载最新版本:

    [versions]
    ...
    onlyoffice.plone = 1.0.1
  2. 运行 bin/buildout。等待新版本下载并安装。

  3. 在完成下一步之前,您的站点可能会出现失真甚至无法访问的情况。

  4. 导航到 插件 屏幕(在您的站点 URL 后添加 /prefs_install_products_form),在 升级 列表中选择 onlyoffice.plone 并点击 升级 onlyoffice.plone。

工作原理​

ONLYOFFICE 集成遵循此处记录的 API。

  1. 用户导航到 Plone 中的文档并选择 ONLYOFFICE 编辑 操作。
  2. Plone 为 文档服务器 准备一个 JSON 对象,具有以下属性:
    • url:ONLYOFFICE 文档 用于下载文档的 URL;
    • callbackUrl:ONLYOFFICE 文档 用于通知文档编辑状态的 URL;
    • key:UUID+修改时间戳,用于指示 ONLYOFFICE 文档 是否需要重新下载文档;
    • title:文档标题(名称)。
  3. Plone 从 .pt 模板构建页面,填充所有这些值,以便客户端浏览器可以加载编辑器。
  4. 客户端浏览器向 ONLYOFFICE 文档 请求 JavaScript 库,并将上述属性的 DocEditor 配置发送给 ONLYOFFICE 文档。
  5. 然后 ONLYOFFICE 文档 从 Plone 下载文档,用户开始编辑。
  6. ONLYOFFICE 文档 向 callbackUrl 发送 POST 请求,通知 Plone 用户正在编辑文档。
  7. 当所有用户和客户端浏览器完成编辑时,他们关闭编辑窗口。
  8. 在 10 秒不活动后,ONLYOFFICE 文档 向 callbackUrl 发送 POST 请求,通知 Plone 客户端已完成编辑并关闭文档。
  9. Plone 下载文档的新版本,替换旧版本。

为 ONLYOFFICE 和 Plone 集成启用 JWT​

为了保护文档免受未经授权的访问,ONLYOFFICE 编辑器使用 JSON Web Token (JWT)。在初始化 文档编辑器 和内部 ONLYOFFICE 文档服务 之间的命令交换时,令牌 会添加到配置中。密钥 用于签署 JSON Web Token 并在请求 ONLYOFFICE 文档 时验证令牌。

从 ONLYOFFICE 文档 v7.2 开始,JWT 默认启用,并且密钥会自动生成。您需要在 ONLYOFFICE 文档配置文件 中找到您的密钥,然后在连接器设置中指定相同的密钥。

步骤 1:在 ONLYOFFICE 文档配置文件 中找到您的密钥

  1. 使用任何可用的文本编辑器打开 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"
    }
    }
    }
    }
    }
  2. true 值在三个部分中指定。这意味着令牌验证已启用。

    • services.CoAuthoring.token.enable.browser
    • services.CoAuthoring.token.enable.request.inbox
    • services.CoAuthoring.token.enable.request.outbox
  3. 自动生成的密钥在三个部分中指定。您可以用自己的密钥替换默认密钥。密钥必须在三个部分中相同。

    • services.CoAuthoring.secret.inbox.string
    • services.CoAuthoring.secret.outbox.string
    • services.CoAuthoring.secret.session.string
  4. 如果您进行了更改,请保存并重启服务以使配置更改生效。

    supervisorctl restart all

步骤 2:在连接器设置中指定相同的密钥

在连接器设置中,在 密钥 字段中指定相同的密钥并保存设置。

连接到演示 ONLYOFFICE 文档​

从 ONLYOFFICE 连接器版本 3.0.0 开始,您可以在 Plone 中尝试 ONLYOFFICE 在线编辑器,而无需安装 ONLYOFFICE 文档。

要开启连接,请勾选 连接到演示 ONLYOFFICE 文档服务器 复选框并点击 保存 按钮。

重要

这是一个公共测试服务器,将在 30 天内可用。请勿在其中共享您的敏感数据。

在 Plone 中开始使用 ONLYOFFICE 文档​

要创建文档:

  1. 在 内容 选项卡上,点击左侧的 在 ONLYOFFICE 中创建 菜单选项。

  2. 选择所需的文件类型:文档、电子表格或演示文稿。

    Create file

  3. 将打开一个新的文档以供编辑。

要编辑文档:

  1. 在 内容 选项卡中找到所需的文档。

    ONLYOFFICE_editfile

  2. 点击文档。

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

    ONLYOFFICE_editfile1

要将文档转换为 Office Open XML 格式:

  1. 在 内容 选项卡中找到所需的文档。

  2. 点击文档。

  3. 在打开的页面上,点击 在 ONLYOFFICE 中转换 菜单选项。

    Convert

    备注

    请参阅可转换为 OOXML 的格式的完整列表。

  4. 点击 转换 按钮。

    Convert

要创建 PDF 表单:

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

要填写表单:

  1. 在 内容 选项卡中找到所需的表单。

  2. 点击表单。

  3. 在打开的页面上,点击 在 ONLYOFFICE 中填写表单 菜单选项。

    Fill in a form

备注

要了解有关表单的更多信息,请阅读有关创建和填写表单的相应文章。

要下载不同格式的文档:

  1. 在 内容 选项卡中找到所需的文档。

  2. 点击文档。

  3. 在打开的页面上,点击 操作 菜单选项并选择 下载为 菜单项。

    Download

  4. 从列表中选择所需的格式。

  5. 点击 下载 按钮。

    Download

备注

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