更新时间:2023-02-12 22:04
Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成,在GPL2.0及更新协议下发布。连续多年荣获全球最佳CMS大奖,是基于PHP语言最著名的WEB应用程序。截止2011年底,共有13,802位WEB专家参加了Drupal的开发工作;228个国家使用181种语言的729,791位网站设计工作者使用Drupal。著名案例包括:联合国、美国白宫、美国商务部、纽约时报、华纳、迪斯尼、联邦快递、索尼、美国哈佛大学、Ubuntu等。
Drupal诞生于2000年,是一个基于PHP语言编写的开发型CMF(内容管理框架),即:CMS+ framework。其中 framework是指Drupal内核中的功能强大的PHP类库和PHP函数库,以及在此基础上抽象的Drupal API。在网站开发能力上,Drupal,Joomla和Yii、CodeIgniter、Zend、CakePHP等业界顶级PHP框架同样强大。形象的说,Drupal是一个附带CMS的PHP开发框架。Drupal创始人Dries Buytaert创办的美国Acquia公司的开发人员甚至戏称:Drupal是一个用于开发网站的“操作系统”(webOS),而且此称法被业界广泛接受。很多Drupaler(即Drupal开发者)信奉这样一条真理:既然Drupal已经为我们写好了CMS,那么我们为什么还要选择那些不含有CMS的PHP开发框架呢?
Drupal是一套开源系统,全球数以万计的WEB开发专家都在为Drupal技术社区贡献代码。因此,Drupal的代码在安全性、健壮性上具有世界最高水平。这也是美国白宫、美国商务部、法国政府、纽约时报、SONY等著名政府和机构纷纷采用Drupal建设网站的最重要的原因。
Drupal具有业内最强的定制能力和灵活性,这也是造成Drupal学习难度太大的根本原因,这也是没有办法的事情,灵活性的提高必然使复杂程度提高。因此,Drupal技术圈内有一句名言——“Drupal有难度,学习需谨慎。”
Drupal强大的定制开发能力,也使其成为众多有技术实力的网站建设公司优先选用的网站开发平台。全世界的WEB专家都在为Drupal贡献自己的智慧,这是某个公司内部技术团队永远也无法享受到的。
Drupal的架构由三大部分组成:内核、模块、主题。三者通过Hook机制紧密的联系起来。其中,内核部分由世界上多位著名的WEB开发专家组成的团队负责开发和维护。
Drupal综合了强大并可自由配置的功能,能支持从个人博客(PersonalWeblog)到大型社区驱动(Community-Driven)的网站等各种不同应用的网站项目。Drupal最初是由DriesBuytaert所开发的一套社群讨论软件。之后,由于它的灵活的架构,方便的扩展等特性,使得世界上成千上万个程序员加入了Drupal的开发与应用中。今天,它已经发展成为一套强大的系统,很多大型机构都采用基于Drupal的框架建站,包括The Onion,Ain't ItCool News,SpreadFirefox,Ourmedia,KernelTrap,NewsBusters等等。它特别常见于社区主导的网站。
+ 搜索引擎友好的URL
+ Drupal提供了强大的个性化环境,每个用户可以对网站内容和表现形式进行个性化设置
+ Drupal提供了基于角色的权限系统,没有必要对每个用户进行授权,只需要对角色进行授权
+ Drupal提供的站内搜索系统能对站内的所有内容进行索引和搜索
+ Drupal的模板系统将内容和表现分离,可以很方便地控制网站的外观
+ Drupal提供内建的新闻聚合工具
+ 提供完善的站点管理和分析工具
+ Drupal的Caching机制能有效减少数据库查询次数,从而提高站点性能,降低服务器负荷
+ 强大的多语言支持体系。能够支持很多国家的语言,让你的网站在世界上通行。
+ 扩展能力强大,有丰富的第三方扩展支持。
+ 内部结构以最简单的PHP特征实现丰富的钩子机制。
Drupal是一套开源的内容管理平台,拥有多种功能,可以用来建设从个人网站到大型社区网站。Drupal包括以下的功能:
Blog
协同写作平台
论坛
文件的上传与下载
多角色权限管理
模块化
主题引擎
多语言支持
Drupal 基于PHP脚本语言,推荐使用mysql数据库,所以要运行Drupal必须先安装好PHP支持程序,推荐apache + mysql + php的安装和配置环境。linux系统下推荐采用lamp安装套件或windows系统下推荐安装wamp套件。
Web server
Apache(推荐)
Apache 1.3 或者Apache 2.x 在 UNIX/Linux,OS X,o或 Windows上;
使用apache 'mod_rewrite' 扩展,开启简洁路径;
Microsoft IIS
Drupal核心可以运用在IIS 5,IIS 6,或IIS 7,前提是PHP需要配置正确;
When using Drupal on IIS 7 with fastcgi you must install Hotfix kb954946,or wait until the hotfix appears in a package update (recommended). KB954946 was included in Windows 2008 Server SP2
Database server
MysqL(推荐)
Drupal 5.x和早期的版本支持MySQL 3.23.17 或更高版本。强力推荐MySQL 4.1或更高的;
Drupal6支持MySQL 4.1或更高版本;
Drupal7仅支持MySQL5.0.15或更高,而且必须在php上设置PDO database扩展;
Drupal6支持PostgreSQL 7.1或更高;
Drupal7仅支持PostgreSQL 8.3或更高;
PHP 5.2.6 for Windows has a bug in its pgsql extension. You will need to replace it with the php_pgsql.dll from version 5.2.5.
安装步骤:
1.建立数据库:用mysql命令行、phpmyadmin、mysql-front等工具新建一个数据库,并记住数据库的名称。
2.将Drupal代码根目录放入apache的web服务目录(www或htdocs等),将sites/default文件夹下的default.settings.php复制一份,重命名为settings.php,并将其文件权限设置为可写。
3.在浏览器地址栏输入http://你的网站域名 (如果将代码放置在网站根目录下),或http://你的网站域名/drupal (如果将代码放置在drupal目录下),在出现的页面中选择语言(默认为英语),然后按提示填入数据库的名称,用户,密码等信息。
4.首次执行,可以设置相应的个性化参数,如帐户,首页,简介链接等。
注:安装过程中创建的帐户为网站管理员,拥有该网站的最高权限。
Drupal 官方提供大量模板和主题可以供用户免费下载,WEB 设计师也可以自行设计模板,和全球用户共享知识的海洋。
2007年,时任官方专员的Jacob Redding先生开始在中国开展推广活动。2008年,由John Zhu,Jacob Redding,Amber Zhong 等人在北京组织举办了3期BootCamp推广培训,和其它各类主题推广活动。中国drupal协会是2008年11月15日由drupal活动的组织者circleoflife,chinajason,John Zhu,Amber.Zhong等人创建,协会的主旨是积极传播‘自由、参与、沟通、奉献’的开源精神,在中国推广Drupal。
Drupal是一个非常优秀的PHP CMS,在使用Drupal之前,我们好好看看Drupal主要术语的介绍.Drupal术语,Block(区块),Box(盒子),Engine(引擎),Filter(过滤器),Module(模块),Node(节点),Permissions(权限),Style(样式)Taxonomy(分类)Template(模板),Theme(主题)风格
# Block(区块)
区块一般位于网页两边的侧栏中,用于导航或显示一些附加内容。区块是一种把数据定位到页面的方法之一。各主题风格可以通过block($subject
# Box(盒子)
# Engine(引擎)
引擎是一类特殊的主题,它通过模板来输出HTML内容。
# Filter(过滤器)
过滤器是做内容过滤的框架。
# Module(模块)
模块是为Drupal提供扩展功能的代码片段。有些模块是Drupal核心系统的一部分(例如taxonomy和blog模块),扩展模块(例如 weblinks和image模块)则不属于Drupal的核心系统。核心模块已包含在Drupal的下载包中,扩展模块则需要单独下载。
# Node(节点)
节点是Drupal中最简单又最难理解的一个概念。几乎Drupal中所有的内容都被存储为一个节点。一个节点就是Drupal的一块内容,它可以是投票、报道、书的一页、或一张图片。
# Permissions(权限)
权限用于控制内容的创建、修改和站点管理等访问。管理员可以将权限赋给角色,将角色赋给用户。一个用户可以属于一个或多个角色。Drupal缺省提供了两种角色:游客和注册用户
# Style(样式)
样式是主题或引擎提供的CSS文件,用于替换缺省的CSS。
# Taxonomy(分类)
Drupal通过分类来描述目录系统,用于对网站的内容进行组织和分类。
# Template(模板)
模板是模板引擎的,普通人可读懂的HTML文件,这些文件有一些特殊的代码,用于产生动态信息。
# Theme(主题)
主题是包含一些函数的PHP文件,用于提供不同的布局风格。
很多全球著名的政府机构、商业公司、高等学府、技术社区和社团的网站,都使用Drupal进行搭建。下面是部分基于Drupal的典型案例:
政府机构-联合国、美国白宫、美国商务部、美国总统奥巴马经济恢复网站、法国政府、纽约市长Mike Bloomberg
娱乐公司-华纳兄弟、索尼/BMG、Fox、环球唱片、迪斯尼/ABC
新闻杂志-纽约时报、纽约观察报、福布斯、花花公子、The Fast Company、Now Public、The Onion
技术社区-Ubuntu、Fedora、Firefox、Team Sugar
这些成功的合作案例证明,Drupal不但适合个人站点及网上社区类网站,而且已被国际著名大公司和组织机构所接受和采纳。相信在国内,Drupal也会很快流行起来,成为主流网站设计和开发平台。
一个开源的内容管理平台,它驱动着全球数以百万计的网站和应用。一个来世界各地不同地方的人们形成的多元并且活跃的社区创建和使用Drupal,并且提供支持。人们通常将Drupal拿来和另一个著名的开源CMS,即Joomla进行比较。一个广为人知的比喻是:好比在操作系统领域的竞争,Drupal的最新版本是7.28。由于“难度”更大而中文资源较Joomla更少,Drupal在中国的普及程度较Joomla更低。但情况可能正在好转,酒香不怕巷子深,越来越多的网站创建者开始认识到Drupal的强大和它的价值。随着部分中文Drupal技术社区陆续推出一些高品质的视频和文字教程,了解和深入学习Drupal的门槛在逐步降低,Drupal在中国也拥有了越来越多坚定的支持者,未来颇可期待。