Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Drupal is a free software package that allows an individual or a community of users to easily publish, manage and organize a wide variety of content on a website. Tens of thousands of people and organizations have used Drupal to power scores of different web sites, including • Community web portals • Discussion sites • Corporate web sites • Intranet applications • Personal web sites or blogs • Aficionado sites • E-commerce applications • Resource directories • Social Networking sites Drupal, an open source content management platform is equipped with a powerful blend of features, Drupal can support a variety of websites ranging from personal weblogs to large community-driven websites. It will enable the features such as: • Content Management Systems • Blogs • Collaborative authoring environments • Forums • Peer-to-peer networking • Newsletters • Podcasting • Picture galleries • File uploads and downloads General features Collaborative Book - Our unique collaborative book feature lets you setup a project or "book" that needs to be written and then authorize other individuals to contribute content. Friendly URLs - Drupal uses Apache's mod_rewrite to enable customizable URLs that are both user and search engine friendly. Modules - The Drupal community has contributed many modules which provide functionality like taxonomy display, jabber authentication, private messages, bookmarks, etc. Online help - Like many Open Source projects, we can't say that our online help is perfect but have built a robust online help system and written the core help text.
  2. 2. Open source - The source code of Drupal is freely available under the terms of the GNU General Public License (GPL). Unlike proprietary blogging or content management systems, Drupal's feature set is fully available to extend or customize as needed. Personalization - A robust personalization environment is at the core of Drupal. Both the content and the presentation can be individualized based on user-defined preferences. Role based permission system - Drupal administrators don't have to tediously setup permissions for each user. Instead, they assign permissions to roles and then group like users into a role group. Searching - All content in Drupal is fully indexed and searchable at all times. User management User authentication - Users can register and authenticate locally or using an external authentication source like Jabber, Blogger, LiveJournal or another Drupal website. For use on an intranet, Drupal can integrate with an LDAP server. Content management Polls - Drupal comes with a poll module which enables admins and/or users to create polls and show them on various pages. Templating - Drupal's theme system separates content from presentation allowing you to control the look and feel of your Drupal site. Templates are created from standard HTML and PHP coding meaning that you don't have to learn a proprietary templating language. Threaded comments - Drupal provides a powerful threaded comment model for enabling discussion on published content. Comments are hierarchical as in a newsgroup or forum. Version control - Drupal's version control system tracks the details of content updates including who changed it, what was changed, the date and time of changes made to your content and more. Version control features provide an option to keep a comment log and enables you to roll-back content to an earlier version. Blogging Blogger API support - The Blogger API allows your Drupal site to be updated by many different tools. This includes non-web browser based tools that provide a richer editing environment.
  3. 3. Content syndication - Drupal exports your site's content in RDF/RSS format for others to gather. This lets anyone with a "News Aggregator" such as NetNewsWire or Radio UserLand browse your Drupal site from the comfort of their desktop. News aggregator - Drupal has a powerful built-in News Aggregator for reading and blogging news from other sites. The News Aggregator caches articles to your MySQL database and its caching time is user configurable. Note: This prevents losing track of your news as in other aggregators when you're offline for a few days. Permalinks - All content created in Drupal has a permanent link or "perma link" associated with it so people can link to it freely without fear of broken links. Platform Apache or IIS, Unix / Linux / BSD / Solaris / Windows / Mac OS X support - Drupal was designed from the start to be multi-platform. Not only can you use it with either Apache or Microsoft IIS but we also have Drupal running on Linux, BSD, Solaris, Windows, and Mac OS X platforms. Database independence - While many of our users run Drupal with MySQL, we knew that MySQL wasn't the solution for everyone. Drupal is built on top of a database abstraction layer that enables you to use Drupal with MySQL and PostgreSQL. Other SQL databases can be supported by writing a supporting database backend containing fourteen functions and creating a matching SQL database scheme. Multi-language - Drupal is designed to meet the requirements of an international audience and provides a full framework to create a multi-lingual website, blog, content management system or community application. All text can be translated using a graphical user interface, by importing existing translations, or by integrating with other translation tools such as the GNU gettext. Administration and analysis Analysis, Tracking and Statistics - Drupal can print browser-based reports with information about referrals, content popularity and how visitors navigate your site. Logging and Reporting - All important activities and system events are captured in an event log to be reviewed by an administrator at a later time. Web based administration - Drupal can be administered entirely using a web browser, making it possible to access it from around the world and requires no additional software to be installed on your computer.
  4. 4. Community features Discussion forums - Full discussion forum features are built into Drupal to create lively, dynamic community sites. Performance and scalability Caching - The caching mechanism eliminates database queries increasing performance and reducing the server's load. Not only can the caching be tuned in real time, while your site is under load, but it has been successfully tested under a "slashdotting" and performed extremely well. Directory The directory module presents a very simple and lightweight hierarchical 'directory-like' view (conceptually similar to DMOZ, Yahoo, etc.) of nodes that have been assigned to one or more designated taxonomy 'vocabularies' (depending on module configuration). This allows users to drill down on selected content on your Drupal site. Content Construction Kit (CCK) The Content Construction Kit allows you create and customize fields using a web browser. The 4.7x version of CCK creates custom content types and allows you to add custom fields to them. In Drupal 5.x custom content types can be created in core, and CCK allows you to add custom fields to any content type. Notice! The newest 5.x versions include table name changes for the tables that store CCK data, so be sure to visit update.php to see if database updates are needed. No matter what version you are using, you should check update.php any time you update your code. Several contributed projects provide additional field types and widgets for CCK: • computed field: lets you add a PHP-driven "computed field" to CCK node types • date: creates an ISO or unix timestamp date field • email: validated email field • image field: an image field • link: a URL field Other modules related to CCK:
  5. 5. • content template (contemplate): allows for control over the form and display of fields, including teaser and RSS feeds • views: provides many types of listings of content; CCK exposes its fields to the Views system. CCK Field Permissions This module allows admins to restrict access to specific CCK node type fields to by user roles. This is useful if you have a content type that you want to allow some classes of users greater use of- for example, a CCK node may have a field for a link to an external website. Using this module you can allow only registered users to have access to that field to create, update, and now view. Note: that when you enable this module for a specific field, you must grant view access for users- when you enable it, it strips view access for all users except the root user. If you disable this module, all access is returned to normal. CCK Field Permissions does not use node_access so it will not interfere with other access control modules. Views Content display · Views · Modules merlinofchaos - November 25, 2005 - 20:34 The views module provides a flexible method for Drupal site designers to control how lists of content (nodes) are presented. Traditionally, Drupal has hard-coded most of this, particularly in how taxonomy and tracker lists are formatted. This tool is essentially a smart query builder that, given enough information, can build the proper query, execute it, and display the results. It has four modes, plus a special mode, and provides an impressive amount of functionality from these modes. You need Views if: • You like the default front page view, but you find you want to sort it differently. • You like the default taxonomy/term view, but you find you want to sort it differently; for example, alphabetically. • You use /tracker, but you want to restrict it to posts of a certain type. • You like the idea of the 'article' module, but it doesn't display articles the way you like.
  6. 6. • You want a way to display a block with the 5 most recent posts of some particular type. • You want to provide 'unread forum posts'. • You want a monthly archive similar to the typical Movable Type/Wordpress archives that displays a link to the in the form of "Month, YYYY (X)" where X is the number of posts that month, and displays them in a block. The links lead to a simple list of posts for that month. Views can do a lot more than that, but those are some of the obvious uses of Views. Content Templates (Contemplate) The Content Template (a.k.a. ConTemplate) module allows modification of Drupal's teaser and body fields using administrator defined templates. These templates use PHP code and all of the node object variables are available for use in the template. An example node object is displayed and it is as simple as clicking on its properties to add them to the current template. This module was written to solve a need with the Content Construction Kit (CCK), where it had a tendency toward outputting content in a not-very-pretty way. And as such, it dovetails nicely with CCK, adding a "template" tab to CCK content-type editing pages and pre-populating the templates with CCK's default layout. This makes it easy to rearrange fields, output different fields for teaser and body, remove the field title headers, output fields wrapped for use with tabs.module (part of JSTools), or anything you need. But Content Template can actually be used on any node type and allows modification of the teaser and body properties before they go out in an RSS feed or are handed off to the theme.
  7. 7. ///////Template for Teaching faculty: <table> <tr><td rowspan=5><?php print $field_image[0]['view']; ?><br>DOB:<?php print substr($field_date_of_birth[0]['view'],0,-7)?> </td> <td><b>Designation</b></td><td><?php print "<li>".$field_designation[0]['view']? ></td> </tr> <tr><td><b>Qualification</b></td> <td> <?php foreach ($field_qualification as $qualification){ print "<li>".$qualification['view']."</li>"; } ?> </td></tr> <tr><td><b>Experience</b></td><td><?php print "<li>". $field_experience_and_specializa[0]['view']."</li>"?></td></tr> <tr><td><b>Specialization</b></td> <td> <?php foreach ($field_specialization as $specialization){ print "<li>".$specialization['view']."</li>"; } ?> </td></tr> <tr><td><b>Date of joining</b></td> <td> <?php print "<li>".$field_date_of_joining_0[0]['view']; ?> </td></tr> </table> <b>Achievements and Publications</b> <?php foreach($field_achievements__publication as $achievement){ print "<li> ".$achievement['view']."</li>"; } ?> </td></tr> <br> <center><h3><b>Contact</b></h3></center> <table border=1>
  8. 8. <tr><td><b>Present Address</b></td><td><?php print $field_present_address[0] ['view'];?></td></tr> <tr><td><b>Permanent Address</b></td><td><?php print $field_permananent_address[0]['view'];?></td></tr> <tr><td><b>E-mail</b></td> <td> <?php print $field_e_mail[0]['view']; ?> </td></tr> <tr><td><b>Homepage</b></td> <td> <?php print $field_homepage[0]['view']; ?> </td></tr> <tr><td><b>Phone</b></td><td><?php print "(H): ".$field_home[0]['view']." (O): ". $field_office[0]['view']." (M): ".$field_mobile[0]['view'];?></td></tr> </table> Template for non-teaching faculty: <table> <tr><td rowspan=6><?php print $field_image[0]['view']?><br> DOB:<?php print substr($field_date_of_birth[0]['view'],0,-7)?></td> <td><b>Designation:</b></td><td><?php print "<li>".$field_designation_0[0] ['view']."</li>";?></td></tr> <tr><td><b>Experience:</b></td><td><?php print "<li>". $field_experience_and_specializa[0]['view']."</li>";?></td></tr> <tr><td><b>Date of joining:</b></td> <td> <?php print "<li>".$field_date_of_joining[0]['view']."</li>"; ?> </td></tr> <tr><td><b>Achievements and Activities:</b></td> <td> <?php foreach ($field_achievements__activities as $achievement){ print "<li>".$achievement['view']."</li>"; } ?> </td></tr>
  9. 9. </table> <br> <center><h3><b>Contact</b></h3></center> <table border=1> <tr><td><b>Present Address</b></td><td><?php print $field_present_address[0] ['view'];?></td></tr> <tr><td><b>Permanent Address</b></td><td><?php print $field_permananent_address[0]['view'];?></td></tr> <tr><td><b>E-mail</b></td> <td> <?php print $field_e_mail[0]['view']; ?> </td></tr> <tr><td><b>Phone</b></td><td><?php print "(H): ".$field_home_0[0]['view']." (O): ". $field_office_0[0]['view']." (M): ".$field_mobile[0]['view'];?></td></tr> </table> //////////Template for student <table> <tr><td rowspan=6><?php print $field_image_0[0]['view']; ?><br>DOB:<?php print substr($field_date_of_birth_0[0]['view'],0,-7)?></td> <td><b>Rollno:</b></td><td><?php print $field_rollno[0]['view']?></td></tr> <tr><td><b>Admisson No:</b></td> <td> <?php print $field_admission_no[0]['view'] ?> </td></tr> <tr><td><b>Department</b></td><td><?php print $field_department[0]['view']? ></td></tr> </table> <table border=1> <tr><td><b>Present Address</b></td><td><?php print $field_present_address_1[0] ['view'];?></td></tr> <tr><td><b>Permanent Address</b></td><td><?php print $field_permananent_address_0[0]['view'];?></td></tr>
  10. 10. <tr><td><b>E-mail</b></td> <td> <?php print $field_e_mail_0[0]['view']; ?> </td></tr> <tr><td><b>Phone</b></td><td><?php print "(R): ".$field_residence_0[0]['view']." (M): ".$field_mobile_0[0]['view'];?></td></tr> </table>