- 核心思路:DedeCMS 视频播放的几种实现方式
- 推荐方案:使用成熟的第三方视频播放插件
- 手动代码修改方案(无插件)
- 使用第三方视频网站(如腾讯、B站)嵌入方案
- 选择方案的建议和注意事项
核心思路:DedeCMS 视频播放的几种实现方式
在 DedeCMS 中实现视频播放,主要有以下几种思路:
- 插件集成:这是最简单、最推荐的方式,开发者制作好完整的插件,你只需要上传、安装、激活,即可在后台新增一个“视频”内容模型,并集成一个功能强大的播放器。
- 代码修改:通过修改 DedeCMS 的核心文件(如
article_add.php,article_edit.php和内容模板article_articled.htm),在现有“文章”模型中增加视频上传和播放功能,这种方式灵活但有一定技术门槛,且升级 DedeCMS 时可能需要重新修改。 - 第三方嵌入:不将视频文件上传到自己的服务器,而是上传到腾讯视频、Bilibili、优酷等大型视频网站,然后获取其嵌入代码(iframe),粘贴到文章内容中,这种方式最简单,节省服务器带宽和资源,但受限于第三方平台。
推荐方案:使用成熟的第三方视频播放插件
这是最省心、功能最全的方案,很多开发者都为 DedeCMS 开发了视频播放插件,通常包含以下功能:
- 新增视频内容模型:在后台创建一个专门用于发布视频的栏目和内容类型。
- 多格式支持:支持上传和播放
.mp4,.flv,.webm,.ogg等多种主流视频格式。 - 强大的播放器:集成如 DPlayer、JW Player、CKplayer 等优秀的开源或商业播放器,支持清晰度切换、弹幕、倍速播放、全屏、广告位等功能。
- 视频上传与管理:在后台提供可视化的视频上传界面,可以批量上传,并管理已上传的视频文件。
- 自动调用:发布文章时,只需选择已上传的视频文件,系统会自动在模板中生成播放器代码。
如何寻找和使用插件?
-
寻找插件:
- DedeCMS 官方论坛:http://bbs.dedecms.com/ - 官方社区是寻找插件最权威的地方。
- DedeCMS 插件下载站:网上有很多第三方 DedeCMS 资源站,搜索“DedeCMS 视频播放插件”即可找到,织梦梦”、“Dede58”等网站(请注意辨别网站安全性)。
- 搜索关键词:
DedeCMS 视频插件,DedeCMS DPlayer,DedeCMS CKplayer。
-
安装插件的一般步骤:
- 下载:下载插件包,通常是
.zip格式。 - 上传:通过 FTP 将插件包上传到网站服务器的
/dede/目录下。 - 安装:登录 DedeCMS 后台,找到“模块” -> “上传新模块”,选择刚刚上传的插件包进行安装。
- 创建模型:安装成功后,进入“核心” -> “内容模型管理”,根据插件说明创建新的“视频”模型。
- 创建栏目:进入“栏目” -> “添加栏目”,选择刚刚创建的视频模型,并设置好栏目属性。
- 配置模板:修改或使用插件自带的文章列表页(
list_video.htm)和文章内容页(article_video.htm)模板,确保视频播放器能正确显示。 - :创建一篇新文章,选择视频栏目,即可看到视频上传和选择的选项。
- 下载:下载插件包,通常是
手动代码修改方案(无插件)
如果你不想安装插件,且对代码有一定了解,可以手动修改现有系统,这里以最常见的方式——在“文章”模型中增加视频上传为例。
步骤 1:修改 article_add.php 和 article_edit.php
在这两个文件中,找到处理表单数据的部分,增加一个用于接收视频文件的字段,video。
// 在 article_add.php 和 article_edit.php 中找到类似下面的代码段
// $description = cn_substrR($description, 250);
// 在它后面添加
$video = empty($video) ? '' : trim($video);
// 在保存数据的SQL语句中,确保 `addtable` (你的自定义表) 中有 `video` 字段
// $inquery = "INSERT INTO `{$addtable}`( ... , `video`) VALUES (... , '$video')";
注意:你需要确保你的数据库自定义表(如 dede_addonarticle)中有 video 字段来存储视频的路径。
步骤 2:修改后台模板 /dede/templets/article_add.htm
在文章编辑页面,添加一个文件上传按钮。
<!-- 找到上传缩略图的地方,在其下方添加 -->
<tr>
<td height="24" colspan="2" class="bline">
<strong>视频上传:</strong>
<iframe name='upmsvideo' id='upmsvideo' src='media_add.php?comeback=yes&activepath=<?php echo $activepath ?>&f=video' width='650' height='165' frameborder='0' scrolling='no'></iframe>
</td>
</tr>
这段代码会调用一个媒体上传接口,专门用于上传视频文件,并将文件路径返回到 video 字段。
步骤 3:修改前台内容模板 /templets/default/article_articled.htm
页模板中,添加视频播放器的调用代码。
{dede:field.video runphp='yes'}
if(@me != ''){
// 这里替换成你喜欢的播放器代码
// 例如使用HTML5的video标签
@me = '<video id="my-video" class="video-js" controls preload="auto" width="100%" height="400" data-setup="{}">
<source src="'.@me.'" type="video/mp4">
<p class="vjs-no-js"> To view this video please enable JavaScript, and consider upgrading to a web browser that <a href="http://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a>.</p>
</video>';
}else{
@me = '';
}
{/dede:field.video}
<!-- 在文章内容 {dede:field.body/} 的合适位置输出播放器 -->
{dede:field.video}
上面的例子使用了 Video.js 播放器,你需要先在页面头部引入它的 CSS 和 JS 文件。
这个方案的缺点:
- 需要手动编写和修改代码。
- 功能有限,通常只支持单一播放器。
- 升级 DedeCMS 时,这些修改可能会丢失,需要重新操作。
使用第三方视频网站(如腾讯、B站)嵌入方案
这是最简单、最推荐给新手或不想维护服务器的用户的方法。
操作步骤:
- 上传视频:将你的视频文件上传到腾讯视频、Bilibili、优酷等平台。
- 获取代码:
- 腾讯视频:上传后,点击“分享”,选择“嵌入代码”,复制提供的 iframe 代码。
- Bilibili:上传或找到视频,点击“分享”,选择“嵌入代码”。
- 发布文章:在 DedeCMS 后台发布文章,切换到“HTML”或“源代码”模式,将复制的嵌入代码粘贴到文章内容中。
- 保存:保存文章,前台页面就会显示一个来自第三方网站的播放器。
优点:
- 极简:无需任何技术操作。
- 节省资源:视频托管在第三方服务器,不占用你的网站带宽和空间。
- 播放体验好:大平台提供的播放器功能稳定、体验好。
缺点:
- 依赖性强:如果第三方平台调整规则或视频被下架,你网站上的播放器就会失效。
- 品牌限制:播放器上会有第三方平台的 Logo 和广告。
- 自定义性差:难以深度定制播放器的样式和功能。
选择方案的建议和注意事项
| 方案 | 优点 | 缺点 | 适合人群 |
|---|---|---|---|
| 第三方插件 | 功能强大、专业、易于安装使用 | 可能需要付费,或存在安全风险 | 希望拥有独立视频网站、功能要求高的用户 |
| 手动代码修改 | 灵活、可控、无插件依赖 | 技术门槛高,维护麻烦,升级易失效 | 有一定开发能力,希望深度定制的用户 |
| 第三方嵌入 | 极其简单、免费、节省资源 | 依赖性强、有广告、自定义性差 | 新手、博客、个人分享类网站 |
最终建议:
- 对于商业网站或专业视频站:强烈推荐使用成熟的付费视频插件,虽然需要投入一点成本,但换来的是稳定的功能、专业的体验和良好的售后服务。
- 对于个人博客或偶尔分享视频:推荐使用第三方嵌入(B站、腾讯视频),这是性价比最高、最省心的方式。
- 对于有一定技术能力且追求极致自定义的用户:可以尝试手动代码修改,但务必做好代码备份,并关注 DedeCMS 的升级动态。
最后提醒:无论选择哪种方案,请确保你的服务器环境(PHP版本、空间大小、带宽)能够满足视频播放的需求,从第三方网站下载插件时,一定要选择信誉好的来源,以防恶意代码。
