Drupal
From Wikipedia, the free encyclopedia
Home page of a default Drupal installation (with a Lorem Ipsum article). |
|
Initial release | January 2001 |
---|---|
Latest release | 6.10 / 2009-2-26 |
Written in | PHP |
Operating system | Cross-platform |
Type | Content management framework, Content management system, Community and Blog software |
License | GPL |
Website | drupal.org |
Drupal (pronounced /ˈdruː-pʌl/) is a free and open source[1] modular framework and Content Management System (CMS) written in PHP.[2][3] It is used as a "back end" system for many different types of websites, ranging from small personal blogs to large corporate and political sites.[4]
The standard release of Drupal, known as "Drupal core", contains basic features common to most CMSs. These include the ability to register and maintain individual user accounts, administration menus, RSS-feeds, customizable layout, flexible account privileges, logging, a blogging system, an Internet forum, and options to create a classic "brochureware" website or an interactive community website.
Drupal was also designed to allow new features and custom behavior to be added by third parties. For this reason, Drupal is sometimes described as a "Content Management Framework".[2] Although Drupal offers a sophisticated programming interface for developers, no programming skills are required for basic website installation and administration.[5]
Drupal can run on any computing platform that supports:
- a web server capable of running PHP (version 4.3.5+), including Apache, IIS, Lighttpd, and nginx.
- a database, such as MySQL or PostgreSQL, to store content and settings.[3]
Contents |
[edit] History
Originally written by Dries Buytaert as a message board, Drupal became an open source project in 2001.[6] Drupal is an English rendering of the Dutch word “druppel”, which means “drop” (as in “a water droplet”).[7] The name was taken from the now-defunct Drop.org website, whose code slowly evolved into Drupal. Buytaert wanted to call the site “dorp” (Dutch for “village”, referring to its community aspects), but made a typo when checking the domain name and thought it sounded better.[6]
From May 2007 to April 2008, Drupal was downloaded from the Drupal.org website more than 1.4 million times, an increase of approximately 125% from the previous year.[8][9] A large community now helps develop Drupal.[10]
Drupal's popularity is growing rapidly. Over 70 well-known brand names and not-for-profit organizations now use Drupal. [11]
As of February 2009, Drupal 6.10 is the latest release.[12] Drupal is a winner of several Packt Open Source CMS Awards.[13]
[edit] Drupal core
Drupal core is the "stock" installation of Drupal, which can be optionally extended by third party contributions. In Drupal's default configuration, website content can be contributed by either registered or anonymous users (at the discretion of the administrator) and made accessible to web visitors by a variety of selectable criteria including by date, category, searches, etc. Drupal core also includes a hierarchical taxonomy system, which allows content to be categorized or "tagged" with key words for easier access.[5]
Drupal maintains a detailed changelog of core feature updates by version.[14]
[edit] Core modules
Drupal core includes "core modules" which can be enabled by the administrator to extend the functionality of the core website.[15]
The core Drupal distribution provides a number of features[15], including:
- Access statistics and logging
- Advanced search functions
- Caching and feature throttling for improved performance under load
- Comments, forums, and polls
- Descriptive URLs (for example, "www.example.com/products" rather than "www.example.com/?q=node/432")
- Multi-level menu system
- Multi-site support[16]
- Multi-user content creation and editing
- OpenID support
- RSS Feed and Feed Aggregator
- Security/new release update notification
- User profiles
- Various access control restrictions (user roles, IP addresses, email)
- Workflow tools (Triggers and Actions)
[edit] Core themes
Drupal core includes several "core themes", which customize the aesthetic look-and-feel of the site. These themes can be chosen by the administrator via a special menu.[17]
The Color Module, introduced in Drupal core 5.0, allows administrators to change the color scheme of certain themes via a Web-browser interface. This feature was added to allow a higher level of customization for the average non-coder.[18]
[edit] Translations
As of February 2008, translations for Drupal's interface were available in 44 languages plus English (the default).[19] Some read right to left, such as Arabic, Persian and Hebrew. Drupal 6 provides improved support for content and content administration in multiple languages.[20]
[edit] Auto-update notification
Drupal can automatically notify the administrator when a new version of any module, theme, or the Drupal core itself, becomes available. This feature can help keep a Drupal installation up-to-date with the latest features and security fixes.[20]
An auto-update module for the older version 5.x provides identical functionality, but it is not included in the core release.[21]
[edit] Extending Drupal core
Drupal core is designed to be modular with a system of "hooks" and "callbacks", which are accessed internally via an API.[22] This design allows third-party "contributed" (often abbreviated to "contrib") modules and themes to extend or override Drupal's default behaviors without changing Drupal core's code.
Drupal's modular design, which isolates Drupal core's files from contributed module and themes, increases flexibility and security and allows Drupal administrators to cleanly upgrade to new releases of Drupal core without potentially overwriting their site's customizations.[citation needed] To maintain this separation, Drupal administrators are instructed to avoid altering Drupal core's software.
[edit] Contributed modules
Contributed Drupal modules offer a variety of features including image galleries, custom content types and content listings, WYSIWYG editors, private messaging, 3rd-party integration tools, and more. The Drupal website lists 3709[23] free modules (as of March 1, 2009), written and contributed to by the Drupal community.
Two modules are particularly important to typical Drupal installations:[24][25]
- Content Construction Kit (CCK)[26] allows site administrators to dynamically create content types. A content type describes any kind of information to be stored in the website's database. These may include, but are not limited to, events, invitations, reviews, articles, or products.
- Views[27] facilitates the retrieval and presentation of content to site visitors.
The CCK API has been integrated into Drupal as a core module in the unreleased Drupal 7 branch, and Views (without its user interface) will follow at some point in the future.[28]
[edit] Contributed themes
Contributed themes adapt or replace a Drupal site's default look and feel.
Drupal themes use standardized formats that may be generated by common third-party theme design engines. Many themes for Drupal are written in the PHPTemplate engine[29] or, to a lesser extent, the XTemplate engine.[30] Some templates use hard-coded PHP.
Although early versions of Drupal's theming system were criticized[31] for being less design-oriented and more complicated than those for Mambo, Joomla! and Plone, the inclusion of the PHPTemplate and XTemplate engines in Drupal has addressed some of these concerns.[citation needed] The new Drupal 6 theming system utilizes a template engine in an attempt to further separate HTML/CSS from PHP. A new Drupal development module, Devel, provides assistance to theme authors who use Drupal 6.
Community contributed Drupal themes[32] at the Drupal website are released under GPL license (free), and most of them are demonstrated at the Drupal Theme Garden[33].
[edit] Criticism
- Usability: Some aspects of Drupal's administration interface can be confusing and intimidating, particularly for new administrators.[34] According to the Interaction Design and Information Architecture program at the University of Baltimore, Drupal lacks an intuitive, easy administration user interface.[35][36][37] The administration area is regarded as clunky and cryptic with Drupal version 5 and 6, but improved ease of use is planned with the upcoming version 7. According to Dries Buytaert, Drupal 7 won't be released until 90% of the problems identified by the University of Minnesota[38][39] and the University of Baltimore[37] are solved. Usability will be one of the main improvements in Drupal 7 that will close the gap with easier CMSs.[40]
- Learning curve: Drupal may be powerful, but it is also complex. The key is overcoming its steep initial learning curve.[41][42][34] Most casual users are willing to sacrifice features for ease of use making Drupal less popular than more user-friendly CMSs despite its enhanced functionality.[43]
- Backward Compatibility: Drupal is constantly changing and it is a tenet of the design team that backward compatibility be avoided if it hinders new features or even the aesthetics of the code [44]. Often version changes (even at the minor digit) are not compatible with the previous version. This means that Drupal developers may be required to re-work all of their previous code[45]. However, from an end-user perspective, while the programmatic internals of Drupal may drastically change, Drupal Web sites themselves should be automatically upgraded in newer versions and continue to run seamlessly with minimal administrator involvement.
[edit] Security response record
From January to May 2008, five security vulnerabilities were reported and fixed in Drupal core.[46] Security holes were also found and fixed in 25 of the 2147 user-contributed modules.[46]
As security holes are discovered, Drupal core is regularly updated to new versions. Administrators of Drupal sites are automatically notified of these new releases via the Update Status module.[47] Additionally, Drupal.org maintains a security announcement mailing list, a history of all security advisories,[46] a security manual[48], and an RSS feed with the most recent security advisories.[49]
[edit] Distributions
Customized Drupal distributions include some repackaged third-party modules, some with modifications to the core, including vbDrupal, which is Drupal integrated with vBulletin.
Drupal 4.2 [50] was used for DeanSpace, which hosted many independent websites supporting the 2004 U.S. presidential campaign of Howard Dean. After the Dean campaign ended, the DeanSpace project grew into CivicSpace, a Drupal-based "grassroots organizing platform that empowers collective action inside communities and cohesively connects remote groups of supporters."
[edit] Acquia
In 2007, a Drupal-focused company, Acquia, was created by Drupal project lead Dries Buytaert and Jay Batson. Acquia announced a subscription-based service for Drupal at Drupalcon Boston 2008 and started services with Acquia Drupal, a distribution based on Drupal 6, in September 2008. Subscriptions include one or more Drupal distributions, a set of companion network-supplied value-add services, and access to a Technical Assistance Center.[51]
[edit] Community
Drupal has a large community of users and developers. More than 450,000 user accounts have been created on Drupal.org, and over 2000 people have signed up for developer accounts. The last major conference in the USA, Drupalcon Washington DC 2009, attracted over 1400 people.[52] The last European conference, Drupalcon Szeged 2008, held in late August 2008, had an attendance of 500.
There are a number of active Drupal forums,[53] mailing lists[54], and discussion groups.[55] Drupal also maintains several IRC channels on the freenode network.[56]
[edit] See also
- Content management system
- List of content management systems
- Web application frameworks
- List of web application frameworks
[edit] Notes
- ^ Drupal Licensing FAQ
- ^ a b Drupal Overview
- ^ a b Drupal System Requirements
- ^ 45 Drupal Sites Which You May Not Have Known Were Drupal Based
- ^ a b Drupal Features
- ^ a b Drupal's Official History page
- ^ Translation of Druppel (Dutch) to English
- ^ "Drupal Download Statistics (2008)," http://buytaert.net/drupal-download-statistics-2008
- ^ "Drupal Download Statistics (2007)," http://buytaert.net/tag/statistics
- ^ Growth Graphs
- ^ Who is Using Drupal
- ^ Drupal.com's download page
- ^ http://www.packtpub.com/open-source-cms-award-previous-winners
- ^ Drupal changelog
- ^ a b Drupal's Core Modules
- ^ Multisite support on Drupal
- ^ Drupal Announces garland is core theme
- ^ Drupal.com's color module description
- ^ "Translations," Drupal (February 18, 2008)
- ^ a b Description of Drupal 6.0 new features
- ^ Drupal update status module page
- ^ Drupal's API page
- ^ Drupal modules
- ^ http://blog.venture-skills.co.uk/2007/01/08/cck-views-the-ultimate-combination-part-1/
- ^ http://learn.awakenedvoice.com/2007/07/30/drupal-cck-and-views-tutorial/
- ^ Content Construction Kit
- ^ Views
- ^ My Drupal predictions for 2008 | Dries Buytaert
- ^ "PHPTemplate theme engine", Drupal.org.
- ^ "XTemplate theme engine", Drupal.org.
- ^ "How does Drupal compare to Mambo?" discussion thread, Drupal.org. - Old, but still interesting
- ^ Drupal themes
- ^ Drupal Theme Garden
- ^ a b "Drupal Addresses Security In 6.3, Usability in 7". 2008-07-10. http://www.informationweek.com/blog/main/archives/2008/07/drupal_addresse.html.
- ^ "Drupal Usability Research Report" (PDF). 2008-05-01. http://groups.drupal.org/files/DrupalUsabilityResearchReport.pdf.
- ^ "Drupal usability tests from the University of Baltimore with community solutions". 2008-06-26. http://drupal.org/usability-test-university-baltimore-community-solutions.
- ^ a b "Usability, usability, and usability". 2008-07-03. http://buytaert.net/usability-usability-and-usability.
- ^ "First results from usability testing". 2008-03-10. http://buytaert.net/first-results-from-usability-testing.
- ^ "Report from Formal Drupal" (PDF). 2008-03-03. http://buytaert.net/files/usability-testing-minnesota.pdf.
- ^ "Starting to work on Drupal 7". 2008-02-04. http://buytaert.net/starting-to-work-on-drupal-7.
- ^ "Harnessing Drupal for Citizen Journalism". 2007-01-25. http://newassignment.net/blog/brianchoward/jan2007/24/harnessing_drupa.
- ^ "CMS Review: Drupal". 2007-2008. http://www.live-cms.com/reviews/Drupal/.
- ^ "Dries Buytaert's Vision of Drupal". 2008-03-31. http://mameou.wordpress.com/2008/05/31/dries-buytaert-vision-of-drupal/.
- ^ "buytaert.net: Backward Compatibility". 2006-05-26. http://buytaert.net/backward-compatibility.
- ^ "buytaert.net: The pain before the pay-off". 2006-07-27. http://buytaert.net/the-pain-before-the-payoff.
- ^ a b c Security announcements | drupal.org
- ^ Update Status module
- ^ Drupal security manual
- ^ Security RSS feed
- ^ Predictions for 2004 | drupal.org
- ^ Acquia FAQ
- ^ DrupalCon DC By the Numbers: Community, Profit, and Sustainability
- ^ Drupal forums
- ^ Drupal mailing lists
- ^ Drupal groups
- ^ Drupal IRC channels
[edit] Further reading
- Douglass, Robert T., Mike Little, and Jared W. Smith. Building Online Communities With Drupal, phpBB, and WordPress. New York: Springer Verlag/Apress, 2005. ISBN 1590595629.
- Gillmor, Dan. We the Media: Grassroots Journalism by the People for the People. Sebastopol, Calif.: O’Reilly, 2004. ISBN 0-596-00733-7.
- Graf, Hagen. Drupal. Community-Websites entwickeln und verwalten mit dem Open Source-CMS. Munich: Addison-Wesley, 2006. ISBN 3827323215. (German)
- Mercer, David. Drupal: Creating Blogs, Forums, Portals, and Community Websites. Birmingham, England: Packt Publishing, 2006. ISBN 1904811809.
- Peacock, Michael. Selling Online with Drupal e-Commerce. Birmingham, England: Packt Publishing, 2008. ISBN 978-1-847194-06-0
- Shreves, Ric. Drupal 5 Themes. Birmingham, England: Packt Publishing, 2007. ISBN 1847191827.
- Trippi, Joe. The Revolution Will Not Be Televised: Democracy, the Internet, and the Overthrow of Everything. New York: ReganBooks, 2004. ISBN 0-06-076155-5.
- VanDyk, John K., and Matt Westgate. Pro Drupal Development. New York: Springer Verlag/Apress, 2007. ISBN 1590597559.
- VanDyk, John K. Pro Drupal Development, Second Edition. New York: Springer Verlag/Apress, 2008. ISBN 1430209895.
- Herremans, D. Drupal 6: Ultimate Community Site Guide. Switzerland, 2009. ISBN 978-2-8399-0490-2.
[edit] External links
|