`
xinlanzero
  • 浏览: 246664 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

PHP开源CMS-Drupal做视频站点(第1版)

    博客分类:
  • PHP
 
阅读更多

视频网站在web2.0时代是最常见的互联网类型,国外有Youtobe,BlipTV等,国内有优酷,土豆,酷六,网易等各大门户网站都典型的视频网站。

对于某些门户网站或综合型网站都想在CMS的基础上有自己的视频浏览页面。

问题分析

视频也可以看成一篇文章,只不过内容是视频吧了,类型和CMS差不多,但是问题就在于视频的格式,大小,传输速度等就限制了我们的开发。

在开发过程中要考虑的问题如下:

  • 是否是自己原创的视频,是否需要定制的播放还是借助第三方播放插件。
  • 管理员操纵是否合乎他们的习惯和使用是否简单、快捷。
  • 程序员需要系统的搭建,自己含有服务器、VPS还是虚拟主机。
  • 再确定好系统后,分享文件如何上传,毕竟视频不是在2M以内的普通文件,服务器对上传是否有限制。
  • 上传的视频文件是否要自动转换格式,转换后的效果,已经播放效果,包括分辨率,视频的缩略图,视频的水印处理等。

我想我的这些考虑并不是全面的,但是应该覆盖了你的大部分需求分析,接下来的问题将讲解drupal做一个视频站点。

站点目标

这里我假设我们要做个名为dummy的视频站点,它的功能和优酷、土豆网类似。

功能列表:

  • 用户可以自行在自己的个人空间上传视频
  • 管理员审核用户的视频后决定是否发布,发布后用户可以引用视频调用地址
  • 上传视频有最大文件限制
  • 上传视频可以自动转换格式为FLV,可以通过SWF文件播放
  • 转换视频为指定的分辨率,可以在水印图片到视频,视频有缩略图。
  • 管理员发布视频可以简单的发布视频

第一版 视频满足管理员操作

这篇文章主要讲解单用户内容管理系统对视频操作的站点,分为以下几个阶段:drupal基本讲解drupal模块安装Video视频设置Video视频播放器配置区块显示视频

好的,让我们真正开始我们精彩的旅程。

Drupal 基本讲解

  • 系统环境

Operating system操作系统:  Windows, Mac OS X, Linux, Unix, BSD, or Solaris
Web server服务器:  Apache 1.2 or Apache 2.x, Microsoft IIS 6 or 7, lighttpd
Database数据库:  MySQL 4.1 or MySQL 5.0, PostgreSQL 7.4
PHP编程脚本:  PHP 4.3.5. is required, but PHP 5.2.x is recommended

安装环节,请参考drupal官方网站。

drupal后台的管理界面视图如下:

drupal文章内容类型 General view of the administration page

drupal文章内容类型截图如下:

Content types video drupal文章内容类型

drupal文章分类、自由标签如下:

drupal文章分类、自由标签 Taxonomy  categories and tags image

drupal模块列表 (/admin/build/modules/) 截图如下:

drupal module 模块列表 image

大概的几个界面就讲这些,其他详细的请安装后自由的体验。

 

Drupal模块安装

  • 必备模块及版本

1. CCK 6.x-2.8

CCK 全称 Content Construction Kit,内容构造工具,允许你自定义字段到你的节点上通过后台管理界面。

2. CCK扩展:FileField、ImageField

用于字段编辑时,选择的视频字段、图片字段。

3. Views 6.x-2.11

Views模块为Drupal设计界面提供一个灵活的方法来控制如何显示节点内容。

4. ImageCache 6.x-2.0-beta10 和 ImageAPI 6.x-1.9

ImageCache 用于处理图片大小及效果,安装其必须先安装ImageAPI。

5. Video 6.x-4.1-rc6

Video模块允许用户上传视频,支持Video上传,选择FTP现有Video,集成Zencoder网络视频转换功能。

6. SWF Tools 6.x-2.5

自定义播放器推荐模块,支持FlowPlayer 3JW Media Player 4视频播放功能。

  • 可选模块

1. Embedded Media Field

emfield 模块允许自定义字段到节点类型中用于显示第三方视频。不过每个第三方视频提供商都必须安装其相应的模块,比较麻烦,不推荐安装。

最后我们确定用的视频播放器是JW Media Player 4,然后用户可以上传视频。勾选相应的模块,安装后进入视频配置环节。

Video 视频设置

进入/admin/content/types/list 将显示所有的文章类型,如Video视频类型截图显示。

点击添加节点类型(/admin/content/types/add)

name 输入 “Video”, Type 输入 “video”, Description 输入 “A <em>video</em> is a single flv video file to be displayed.”

Submission form settings 中的 Title field label 输入 “Title”,Body field label  输入 空,则不会显示 body字段。

如下图显示:

添加video节点类型image

还没有结束,继续我们关键的地方,实现自定义上传视频的字段。

点击 manage fields 进入 /admin/content/node-type/video/fields, 注意这里的 manage fields  必须在激活 cck模块以后才会出现。

页面下部添加字段如图:

cck添加video字段image

接着会自动跳转到 字段配置 界面(/admin/content/node-type/video/fields/field_video)

接下来可以配置 允许上传视频文件的后缀,默认是mp4, mpeg, avi, mpg, wmv, flv, mov。文件最大的上传大小,最小的文件上传大小,如果最大文件限制留空,系统会默认使用系统能允许上传的文件的最大大小,如果有足够的权限可以设置PHP.INI 文件。当然如果设置了就不会使用系统默认的大小了。

文件的存放路径, 默认是存放在 “ /sites/all/default/files/videos/ ”。

然后可以设置 视频转换的分辨率大小,视频播放器的大小。注:这里的大小都是默认提供的,如果要要修改请编辑文件video.module

勾选使用视频转换,我们将使用 ffmpeg 作为视频转换工具。

设置视频缩略图为:自动产生缩略图, 设置上传数量为 1个,List field 和 Description field 均为 “Disabled”。

保存后,这里视频的自定义字段完成。 点击添加视频(/node/add/video)就会如下图显示的界面显示;

image

视频标题,浏览上传视频等等。看起来很灵活吧 ~@~ 。

最后剩下视频的设置,包括视频使用什么播放器播放,视频转换两个地方需要配置。

在视频播放器配置页面(/admin/settings/video/players),如果系统安装了SWF Tools模块,那么FLV视频就可以自动连接到 SWF Tools ,如下图:

image 其他的视频格式播放,如wmv、avi、mpg、mpeg使用Windows Media Player,mp4、mov、3gp使用Quicktime播放器,rm使用Real Media Player播放器。

视频转换格式使用默认的 FFmpeg即可,请确保系统已经安装好 FFmpeg。关于安装FFmpeg的文章,我将另外花时间写。

Video视频播放器配置

本节主要讲解 配置 SWF Tools 的各个选项及安装 JW Media Player 5 播放器

  • 第一步设置 Embedding settings (/admin/settings/swftools/embed)

视频嵌入方法 选择直接嵌入文件,不通过Javascript方法。暂不知道使用Javascript的好处。

嵌入设置 中重要的一个参数,可能会经常用到,就是背景颜色,默认是白色#FFFFF,如果想看到默认的未加载视频背景是黑色,把颜色设置为#000000即可。

视频嵌入方法和嵌入设置如下图显示。

SWF Tools Embedding settings 视频嵌入方法和嵌入设置 image

  • 第二步 JW Media Player 5 安装,进入菜单 File handling(/admin/settings/swftools/handling)。

把眼睛发到 文件位置 File locations 和 默认播放器地址Default flash player path

这里的注释告诉我们,默认播放器存放的文件位置,留空它的默认值就是(sites/all/modules/swftools/shared),记住把我的播放器放在(sites/all/modules/swftools/shared)这个文件下。

文件位置 File locations 和 默认播放器地址Default flash player path image

上图已经播放器存放位置告诉大家了,不知道大家明白没有。

请将你下载的播放器swf文件存放到 sites/all/modules/swftools/shared/flash_media_player/player-viral.swf 记住命名也要和它的相同。

把播放器存放到正确位置后,说明安装成功的截图如下,没有了红色提示 和 Download here字样。

JW Media Player 5 安装成功 image

这样我们的JW Media Player 5 就安装成功了!

  • 第三步设置 JW Media Player 4(/admin/settings/swftools/wijering4),实际上我们安装的是 JW Media Player 5 ,不过模块还是 JW Media Player 4

这里我们常设置的就是JW Media Player 5 的外观,控制条是否可见,默认是显示在底部,这里我们设置为none

其他的设置默认即可,如果想让视频循环播放等可以在这里设置。

至此我们的整个配置环节结束。下面的步骤就是显示我们的视频咯。。。

区块显示视频

当我们上传视频,并上传视频缩略图,选择播放分辨率大小,如下图所示。

image

我们的视频就完成了,点击查看,视频firebug看到页面如下。

视频预览image

发现我们的视频缺少预览图片,于是我们还要修改一下swftools的一个bug,当前版本尚未完善的。打开 sites/all/modules/video/video_formatter.inc 文件。

看到第137行,在 function theme_video_flv($video, $node) 中,有这样如下一个bug注释:

//@todo: swftools bug, can’t enable this until they fix their pathing for the images.

这里显然没有处理图片的功能,修改为如下。

$options = array(
‘params’ => array(
‘width’ => $video->player_width,
‘height’ => $video->player_height,
),
‘flashvars’ => array(
//@todo: swftools bug, can’t enable this until they fix their pathing for the images.
‘image’ => $video->thumbnail->url,
),
);

将我们的上传图片设为视频默认预览图片,保存后再预览就会有我们的带视频缩略图的预览如下。

image

如果通过views 来让视频在某个block中显示,那么需要注意一下。

格式选择为:Video,这里不需要Video Thumbnail linked to node格式和Video inject with jMedia格式,如下图所示。

image

完了,你的视频网站做成功了吗?

结束语

第一版视频教程就做到这里,这看上去只是一个简单的视频内容管理系统。后面我们将继续努力做成一个完善的视频点播系统。

如果你对此很有研究,希望你能在评论中给你的建议,谢谢!下次再见!

声明:本站遵循署名-非商业性使用-相同方式共享 3.0共享协议. 转载请注明转自LixiPHP
  • 大小: 189.1 KB
  • 大小: 114.8 KB
  • 大小: 109.3 KB
  • 大小: 113.5 KB
  • 大小: 78.3 KB
  • 大小: 13.6 KB
  • 大小: 12.7 KB
  • 大小: 11.3 KB
  • 大小: 23.6 KB
  • 大小: 23.8 KB
  • 大小: 7.3 KB
  • 大小: 41 KB
  • 大小: 9.4 KB
  • 大小: 119.8 KB
  • 大小: 4.8 KB
分享到:
评论
1 楼 kittychina 2012-06-04  
很好,继续!

相关推荐

    Drupal v7.9 多国语言版.zip

    drupal从最初的一个讨论bbs发展到现在如此大规模的CMS,真是奇迹啊!让我们一起步入drupal 7的强大时代,相信drupal7会是drupal发展过程中重要的里程碑!   自Drupal v7.0——v7.4都没有加入新的功能和特性,都是...

    Drupal v7.4 PHP内容管理框架.gz

    推荐阅读:Drupal CMS 专业开发指南 pdf 中文版 Drupal7正式版本终于发布了!渴望已久、期待已久的drupal 7就在我们眼前。drupal从最初的一个讨论bbs发展到现在如此大规模的CMS,真是奇迹啊!让我们一起步入drupal 7...

    全球著名phpCMS-drupal6.0正式版本

    Drupal国外王牌开源PHP,曾经荣获06年全球phpcms第二名,07年开源cms第一名。 它是一基于php+mysql/postgresql的php开源程序,用于构造提供多种功能和服务的动态网站,这些功能包括用户管理(UserAdministration)、...

    Drupal v7.52

    drupal从最初的一个讨论bbs发展到现在如此大规模的CMS,真是奇迹啊!让我们一起步入drupal 7的强大时代,相信drupal7会是drupal发展过程中重要的里程! Drupal 7的优点更加易用:完全革新的管理界面让您的日常管理...

    Drupal 7.32 繁体中文版.zip

    Drupal是一个开源的内容管理系统(CMS)平台,它是用PHP写成的。Drupal有一个优秀的模块化结构,提供了许多模块,包括短消息、个性化书签、网站管理、Blog、日记、电子商务、电子出版、留言簿、Job、网上电影院、论坛...

    Drupal 7.32 简体中文版.zip

    Drupal是一个开源的内容管理系统(CMS)平台,它是用PHP写成的。Drupal有一个优秀的模块化结构,提供了许多模块,包括短消息、个性化书签、网站管理、Blog、日记、电子商务、电子出版、留言簿、Job、网上电影院、论坛...

    Drupal 内容管理系统 v8.4.0 RC1.zip

    Drupal是一个开源的内容管理系统(CMS)平台,它是用PHP写成的。Drupal有一个优秀的模块化结构,提供了许多模块,包括短消息、个性化书签、网站管理、Blog、日记、电子商务、电子出版、留言簿、Job、网上电影院、论坛...

    Drupal内容管理系统-PHP

    drupal从最初的一个讨论bbs发展到现在如此大规模的CMS,真是奇迹啊!让我们一起步入drupal 7的强大时代,相信drupal7会是drupal发展过程中重要的里程!&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;Drupal 7的优点&lt;/p&gt;&lt;p&gt;更加易用:完全革新的...

    使用开源软件设计、开发和部署协作型 Web 站点

    建立开发环境,Drupal 入门, 着重介绍 Drupal与其它软件工具的交互(如 MySQL, Ajax 和 PHP),构建 Drupal 定制模块, 部署和调整安装

    Drop-in CMS (dead)-开源

    使用其他东西。 该项目较旧,近期未更新。 容易的php drop-in cms适用于需要简单地添加CMS而无需完全删除CMS的现有站点,例如WP,Drupal,Joomla ...

    Drupal内容管理系统最新官方版

    Drupal是一个开源的内容管理系统(CMS)平台,它是用PHP写成的。Drupal有一个优秀的模块化结构,提供了许多模块,包括短消息、个性化书签、网站管理、Blog、日记、电子商务、电子出版、留言簿、Job、网上电影院、论坛...

    Drupal 内容管理系统 v9.0.8

    Drupal 内容管理系统简介Drupal是一个开源的内容管理系统(CMS)平台,它是用PHP写成的。Drupal有一个优秀的模块化结构,提供了许多模块,包括短消息、个性化书签、网站管理、Blog、日记、电子商务、电子出版、留言簿...

    ddev:DDEV-Local:本地PHP开发环境系统

    开发者 ddev是一个开源工具,可让您在数分钟内启动并运行本地PHP开发环境,变得非常简单。 由于其每个项目的环境配置可扩展,版本控制和共享,因此它功能强大且灵活。 简而言之,ddev旨在允许开发团队在其工作流中...

Global site tag (gtag.js) - Google Analytics