我会为您详细介绍最常用且效果最好的方法,并附上完整的代码示例。

核心思路
Discuz! 本身不自带视频播放功能,所以我们需要借助第三方播放器插件或者手动嵌入代码,最主流的方案是使用 JW Player 或 Video.js 这类功能强大、兼容性好的 HTML5 视频播放器。
重要提示: FLV 是一种较旧的视频格式,现代的网页播放器(如 Video.js)和浏览器更推荐使用 MP4 (H.264编码) 或 WebM 格式,因为它们性能更好、兼容性更佳,并且对移动设备更友好,如果可能,请尽量转换视频格式。
使用 Discuz! 视频插件(最推荐、最简单)
这是最省心、最安全的方法,因为它与 Discuz! 系统集成得最好,权限管理、上传、播放等功能都由插件统一处理。
-
寻找插件:
(图片来源网络,侵删)- 访问 Discuz! 官方应用中心 (
discuz.app) 或第三方 Discuz! 插件网站。 - 搜索关键词如“视频插件”、“视频门户”、“HTML5播放器”。
- 选择一个评价高、更新活跃的插件,Xunlei Video (迅播) 插件”的替代品或新的“HTML5 视频播放器”插件。
- 访问 Discuz! 官方应用中心 (
-
安装插件:
- 下载插件压缩包。
- 登录您的 Discuz! 后台,进入“插件” -> “插件管理” -> “上传插件”。
- 上传并安装插件,然后启用它。
-
使用插件:
- 插件启用后,通常会在后台创建一个新的“视频”板块,或者允许您在发布帖子时选择插入视频。
- 您可以直接在后台上传视频文件,或者粘贴视频的网络地址。
- 插件会自动生成播放代码,您只需按照指引发布即可。
优点:
- 简单易用:无需手动写代码。
- 功能完整:通常包含视频上传、管理、分类、播放、权限控制等。
- 安全稳定:与 Discuz! 深度集成,不易产生冲突。
缺点:

- 依赖插件:需要额外安装和配置。
手动嵌入第三方播放器代码(灵活、免费)
如果您不想安装插件,或者有特定的播放器需求,可以手动将播放器代码嵌入到帖子中。
这里我们以 Video.js 为例,它是一个免费、开源、功能强大的 HTML5 视频播放器,支持 FLV 格式(需要配合 videojs-flash 插件)。
步骤 1:准备播放器文件
-
下载 Video.js:
- 访问 Video.js 官网:
https://videojs.com/ - 下载最新版本,您会得到一个包含 CSS 和 JS 文件的文件夹。
- 访问 Video.js 官网:
-
上传文件到您的服务器:
- 在您的网站根目录下(
static/或js/文件夹),创建一个名为videojs的文件夹。 - 将下载的
video-js.css和video.min.js文件上传到这个文件夹。 - 重要:为了播放 FLV,您还需要下载
videojs-flash插件,同样,将其 JS 文件也上传到videojs文件夹。
- 在您的网站根目录下(
步骤 2:修改 Discuz! 模板(全局引入)
为了让所有页面都能使用播放器,最好修改 Discuz! 的公共模板。
-
登录 Discuz! 后台。
-
进入“界面” -> “编辑模板” -> “**global.htm**” (这是全局公共模板)。
-
在
<head>和</head>标签之间,添加以下代码,引入 Video.js 的 CSS 和 JS 文件:<!-- 在 global.htm 的 <head> 标签内添加 --> <link href="https://您的域名/static/videojs/video-js.css" rel="stylesheet" type="text/css"> <script src="https://您的域名/static/videojs/video.min.js"></script> <!-- 引入 FLV 播放支持插件 --> <script src="https://您的域名/static/videojs/videojs-flash.min.js"></script>
注意:请将
https://您的域名/static/videojs/替换为您自己服务器上的实际路径。
步骤 3:在帖子中嵌入播放器代码
您可以在发布帖子时,使用 HTML 模式来插入播放器了。
示例代码:
<!-- 设置一个容器,并给它一个唯一的 ID -->
<video id="my-flv-player" class="video-js vjs-default-skin" controls preload="auto" width="640" height="360" data-setup="{}">
<!-- 如果浏览器不支持 Video.js,则显示此文本 -->
<p class="vjs-no-js">
To view this video please enable JavaScript, and consider upgrading to a web browser that
<a href="https://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a>.
</p>
<!-- 这里是视频源,可以是本地路径或网络URL -->
<source src="https://您的域名/video/sample.flv" type="video/flv">
<!-- 可以添加多个源,播放器会自动选择第一个可用的 -->
<!-- <source src="myvideo.webm" type="video/webm"> -->
</video>
<!-- 初始化播放器的脚本 -->
<script>
// 等待页面加载完成
videojs('my-flv-player', {
// 播放器配置选项
controls: true, // 显示控制条
preload: 'auto', // 预加载策略
width: 640, // 播放器宽度
height: 360, // 播放器高度
// 更多配置请参考 Video.js 文档
}, function() {
// 这个回调函数在播放器准备好时执行
console.log('播放器已准备就绪!');
});
</script>
使用方法:
- 在 Discuz! 后台,确保已开启“允许使用 HTML 代码”的权限(通常在“帖子” -> “发帖相关设置”中)。
- 发布新帖子或回复时,切换到“源代码”模式(或类似的HTML编辑模式)。
- 将上面的代码完整复制粘贴进去。
- 务必修改
src属性:将https://您的域名/video/sample.flv替换为您视频文件的实际地址(可以是绝对路径,也可以是网络URL)。 - 发布帖子。
使用 Discuz! 的附件功能(传统方法)
这个方法比较传统,播放体验可能不如现代播放器,但不需要额外插件。
-
上传视频为附件:
- 在发布帖子时,点击“附件”按钮,将您的
.flv视频文件上传为帖子附件。
- 在发布帖子时,点击“附件”按钮,将您的
-
获取附件地址:
- 上传成功后,点击“插入附件”,将视频插入到帖子中,Discuz! 会生成类似
<a href="...">...</a>的链接。 - 或者,查看帖子源代码,找到视频附件的真实下载地址(类似
forum.php?mod=attachment&aid=...的链接)。
- 上传成功后,点击“插入附件”,将视频插入到帖子中,Discuz! 会生成类似
-
使用
<embed>或<object>:- 在帖子源代码模式下,删除默认的附件链接。
- 使用以下代码替换它:
<!-- 使用 embed 标签 (较老,但兼容性好) --> <embed src="https://您的域名/forum.php?mod=attachment&aid=XXX¬humb=yes" type="application/x-shockwave-flash" width="640" height="480" allowscriptaccess="always" allowfullscreen="true"></embed> <!-- 或者使用 object 标签 --> <object type="application/x-shockwave-flash" width="640" height="480" data="https://您的域名/forum.php?mod=attachment&aid=XXX¬humb=yes"> <param name="movie" value="https://您的域名/forum.php?mod=attachment&aid=XXX¬humb=yes"> <param name="allowFullScreen" value="true"> <param name="allowScriptAccess" value="always"> 您的浏览器不支持播放此视频。 </object>
注意:
src或data属性的值必须是您视频附件的直接播放地址,而不是下载地址,通常需要在 URL
