WordPress 插件安装与配置
安装共享 WordPress 插件,将课时关联到 Content ID,并保留 LMS 报名和会员规则。
配置一览#
当前下载:1.3.0-preview.7 · LearnDash、LearnPress、Tutor LMS、Sensei 和 MasterStudy 共用一个插件。
通常只需在管理界面中配置插件。保留现有用户、购买和课程报名记录;不需要另建访问授权记录。
- 1. 配置连接,只需一次
Settings → DRM-X 6.0输入服务器凭据并选择 LMS 适配器。
- 2. 关联课时与视频
DRM-X Protected Video粘贴已发布的 Content ID,选择 VOD/Live 和策略。
- 3. 显示播放器
课程内容
插入 DRM-X 区块或短代码;保留课程报名规则。
安装与配置#
下载下方插件 ZIP 文件。在 WordPress 中打开 Plugins → Add Plugin → Upload Plugin,上传并安装 ZIP,然后启用 DRM-X 6.0 Universal Player。接着打开 Settings → DRM-X 6.0。建议先在测试站点完成配置。
填写具备 license-tokens:create 权限的服务器集成对应的 Site ID、Site Key 和 Access Key。这些值保留在服务器端。插件使用 WordPress 身份验证 salt 加密保存 Access Key;更换 salt 后需要重新填写。
选择 LMS 权限适配器和默认许可证策略。“WordPress 已登录用户”模式允许所有已登录账号观看已映射且已发布的文章;付费课程应选择对应的 LMS 或会员适配器。
填写连接信息后,点击 Save settings 保存。截图中的值均为占位示例,请替换为您自己的配置。更新现有连接时,Access Key 留空会保留已保存的密钥。

映射课时并嵌入播放器#
请按实际课时编辑器选择下方步骤:Gutenberg 使用 DRM-X 区块,LearnPress 经典课时编辑器使用正文下方的设置面板,Tutor LMS 使用课时弹窗中的字段。受保护视频需要由管理员配置。
- 从 DRM-X 控制台中已发布的视频复制 Content ID,并粘贴到 Content ID 输入框。不要填写 Site ID、视频 URL 或 WordPress 页面 ID。
- 打包加密的视频选择 Video on demand (VOD),直播内容选择 Live stream。所选类型必须与已发布内容一致。
- 选择 Protection policy,或保留 Use course or site default 以继承策略。截图中的 Require HDCP 仅为示例,并非所有视频都必须选择此项。
- 已发布页面点击 Save;准备新页面时可先点击 Save draft。页面准备完成后再发布给学员。重新打开编辑器,确认 Content ID 和策略已保存。

在 Gutenberg 中,选中 DRM-X Protected Video 区块,在右侧 Block 栏中打开 Course and access rules。在经典课时编辑器中,该标题位于正文下方的 DRM-X Protected Video 面板内。两种界面使用同一组已保存的设置。引用其他页面的视频时才填写该页面的 WordPress ID;配置当前课时时,区块中的已有页面 ID 保持为 0。
LearnDash、LearnPress、Tutor LMS 和 MasterStudy 根据课程大纲确定课时所属课程。课时只属于一个课程时,保留自动检测。若课时由多个课程共享,请选择应采用其报名与保护策略的关联课程。所选课程必须包含该课时、已发布,且无需课程密码即可访问。仅有报名记录并不能解锁未发布或设有密码保护的课程。

[drmx_player]
[drmx_player post_id="123"]
策略按以下顺序生效:课时策略、关联课程策略、站点默认策略、DRM-X 环境默认策略。课时策略留空表示继承,不会跳过课程和站点设置。请选择与内容密钥模式及目标设备相匹配的策略。
LearnPress:经典课时编辑器#
以管理员身份打开 LearnPress → 课时并编辑课时。在 DRM-X Protected Video 中填写 Content ID,选择内容类型和保护策略。在 Course and access rules 下选择 LearnPress 或自动识别 LMS,并核对关联的课程名称。点击 Copy player shortcode,将短代码粘贴到课时正文,然后点击更新。重新打开课时,检查设置是否保存。短代码中使用的是课时的 WordPress ID,不是课程 ID,也不是 DRM-X Content ID。
Tutor LMS:课程构建器#
打开 Tutor LMS → Courses,编辑课程,进入 Curriculum,点击课时的编辑按钮。正文编辑器下方会显示 DRM-X video — Content ID、Content type、Course and access rules — Protection policy 和 Player placement。Tutor LMS 会自动关联课程并检查报名权限。要插入播放器,请选择 Add the DRM-X player at the end of this lesson,然后保存课时。此 DRM-X 视频不需要填写 Tutor 自带的 Video 上传或 URL 字段。重新打开课时,检查字段和短代码。
如果旧版 Tutor 构建器无法显示这些字段,可启用 Tutor LMS → Settings → Course → Lesson → WP Editor for Lesson,并在 WordPress 编辑器中打开课时。使用 DRM-X Protected Video 面板配置视频,将短代码复制到正文。讲师账号不能修改 DRM-X 的可信映射,需要由站点管理员配置。
MasterStudy:原生课时编辑器#
以 WordPress 管理员身份打开 MasterStudy → Lessons,编辑课时并进入 Custom fields。填写 DRM-X Protected Video — Content ID,选择内容类型和保护策略。课时只属于一个课程时,course ID 保留 0。若要插入播放器,选择 Add player when I save this lesson,然后点击 Save。重新打开 Custom fields,确认设置已保存。MasterStudy 3.7.49 无需再使用 Edit with WordPress。
LearnDash:课程和课时访问权限#
LearnDash 的课时嵌入、共享课程、报名错误和进度检查见专门指南。请先完成上方的通用插件安装。
Sensei LMS:课时编辑器#
以管理员身份打开 Sensei LMS 课时并编辑正文。添加 DRM-X 区块或短代码,配置 Content ID,在 Course and access rules 中选择 Sensei LMS。将课时关联到对应 Sensei 课程,保存后分别用已报名和未报名账号验证权限。
各适配器如何检查权限#
LearnPress 同时检查课程权限和具体课程内容项。Tutor LMS 检查课时及其所属课程的报名权限。Sensei LMS 使用原生课时权限检查,包括前置学习要求。MasterStudy LMS 检查已配置的课程与课时。
WooCommerce Memberships、MemberPress 和 Paid Memberships Pro 使用各自的文章访问规则。附加会员适配器与 LMS 权限检查同时生效,两项检查都通过才能播放。WooCommerce Subscriptions 通过 Memberships 的访问规则生效;仅有订阅名称或已完成订单并不能直接授权课时播放。
启用 Tutor LMS 内容逐步开放或 MasterStudy 顺序开放功能时,插件要求通过服务器端过滤器检查具体课时;默认拒绝播放。请先根据您的授权扩展实现 drmx_tutor_drip_access 或 drmx_masterstudy_drip_access,再启用相应课时。
Tutor LMS 与 Sensei LMS 同时安装时,应为共用的课时文章类型明确指定适配器。自定义集成可使用 drmx_user_can_play_content,只有服务器确认用户有权观看后才能返回 true。
打开页面并测试 Universal Player#
使用有权访问的学员账号打开已保存的页面,并点击 Play。编辑器中显示配置字段,学员页面则显示 DRM-X 6.0 Universal Player。请求播放会话前,WordPress 会检查当前用户权限和已保存的内容映射。

播放期间,控件会在 3 秒无操作后隐藏。将鼠标移入播放器、移动鼠标或点击播放器即可再次显示。暂停、键盘操作或更改设置时,控件保持显示。点击齿轮按钮打开 Playback settings。可用的清晰度、音轨和字幕取决于已发布的内容。可在受支持的设备上使用音量、字幕、画中画、影院模式和全屏控件。结束会话时,打开 More options → Stop playback。

找不到 Content ID 输入框或播放器时#
升级到 DRM-X 1.3.0-preview.7,保存未完成的编辑并刷新编辑器。“课程和访问规则”不是独立的 WordPress 菜单。在 LearnPress 中,请查看课时内容下方;在 Tutor LMS 中,请在课程大纲中编辑课时;在 MasterStudy 中,请打开原生课时编辑器的“自定义字段”选项卡。Gutenberg 用户必须先选中 DRM-X 区块。
只有同时具备页面编辑权限的管理员才能修改 DRM-X 内容映射。其他角色编辑页面时,请联系站点管理员配置视频。
Mapped post ID 是可选的 WordPress 页面引用,用于复用其他页面已配置的 DRM-X 视频。它不是 Content ID。为当前页面配置视频时保留 0。使用同一页面映射的所有区块会播放同一个视频。
若播放被拒绝,请检查课时和所属课程是否已发布、课程是否未设置密码保护、内容是否发布在所配置的 DRM-X 环境中、内容类型是否匹配,以及学员是否有课时访问权限。检查 LMS 适配器、课程 ID 及额外会员要求。不要为了绕过访问错误,将付费课程切换为允许所有 WordPress 已登录用户访问。
请通过具有有效证书的 HTTPS 地址打开教学网站。http://192.168.31.98:8080 这样的 HTTP 局域网地址不属于浏览器安全上下文,可能无法使用 DRM 播放所需的 Encrypted Media Extensions(EME)。同一台电脑上的 HTTP localhost 可用于本机测试,属于例外情况。如果 HTTPS 页面仍提示 EME 不可用,请确认浏览器支持 DRM,并允许播放受保护内容;通过 iframe 嵌入时,还需允许该框架使用 encrypted-media。
上线前验证#
请勿将受保护页面和 DRM-X REST 接口加入跨用户共享缓存。请使用您自己的已发布内容验证会员到期、退款、课时开放时间、页面导航、停止播放以及并发播放限制。
LearnDash 4.10.1 配置与访问错误修复 · 集成源码下载
升级现有安装#
备份网站,将现有的 DRM-X 共享插件更新为 preview.7,并清除共享页面缓存。只保留一份插件。重新打开已关联视频的课时,检查保存的值。未登录学员现在会看到登录链接,登录后可返回该课时。全部五种 LMS 适配器都会检查课程发布状态和密码保护。
会话端点也会拒绝非 JSON 或过大的请求,以及不匹配的 DRM-X Content IDs。请保留随附的播放器请求代码;自定义客户端发送的 JSON 必须小于 16 KiB。上线前测试已报名学员、未登录访客、未报名学员、过期权限和未发布课程。
DRM-X 6.0