
Drupal is a free content management software written in PHP language that allows users to easily create a website. Drupal is open source software licensed under the GPL, and is maintained and developed by a community of thousands of users and developers. Drupal is free to download and use.
This website is also running with Drupal. I started using Drupal from the version 4.7.1, and really like it. I recently upgraded to Drupal 5.1, which has many significant improvement from the former version. I found many bugs were fixed in the programming structure. It even comes with an installer, which make it a lot more simpler to get started with Drupal.
I also learned how to develop Drupal modules which allows me to customize my own website in infinite way. The documents provided on the Drupal.org website is greatly useful for general use and programming development.
There are a few of the Drupal's features that I find it useful to manage the URL of the website: Clean URL's, URL aliases (Path module), and Global Redirect module. See David Herron's blog for more detail of these features.
My drupal modules I developed
- Randompic module: Enables users to upload pictures and randomly display picture as a static page or slideshow.
- Whatsnew module: Displays a list of contents or comments on the website that have not been viewed.
Other Drupal modules that I am using on this website
- View: I use View module to customize how the front page is displayed.
- Spam: I received almost a hundred of spam comments on my website everyday, and I used to spend lots of time erasing them. This module works great for me. It automatically detects spam on my website, according to my filter setting.
- Global Redirect: This module should be used with Alias module (Core) because the Alias module will create two URL for the same content. Many search engines like Google doesn't like website with duplicate pages and tend to give negative score for that.
- XML Sitemap: It creates an XML site map for search engine like Google.
- TinyMCE WYSIWYG Editor: This module allows user to put format into the content without using html commands.
- IMCE: The IMCE module gives an easy way to upload files and pictures and add them to TinyMCE. The Drupal's default upload module gave me trouble with file permission (I couldn't manually erase the file on the server). TinyMCE doesn't seem to have this problem after a few setups. Love it.
- Content Construction Kit (CCK): CCK allows you to create and customize fields using a web browser.
- Computed Field: Computed Field is a contributed module to CCK module, which lets you add a computed field to custom content types.
- Imagefield: Provide image field to CCK
- Content Template (Contemplate): Contemplate allows modification of the teaser and body of any type of nodes.
Other Drupal modules that I am using on other website - SiamKayaker
Other Drupal modules that I am using on others website
- Content Construction Kit (CCK)
- FileField: FileField provides a generic file upload field for CCK
- ImageCache: Imagecache is a dynamic image manipulation and caching tool. You can crop and resize image and then display the cached image with CCK or View module.
- Field Permissions: This module allows admins to restrict access to specific CCK node type fields to by user roles.