Netlink Technologies has been using Drupal to create websites for their clients over the last two years.
We just re-launched our website using Drupal 6. We have used CCKs, and created custom module to validate our forms. We have a mailer module that we built in-house to send mails to our clients. We will be adding more features soon. The idea behind using Drupal for our website is to allow our clients to access the portal in the future, in order to enable them to track project progress and communicate with us regarding their projects.

Theming Highlights
The design and site map required three .tpl files to arrive at our Netlink theme. Essentially the 3 files were page-front.tpl, page.tpl, page-node-3.tpl, for the home page, any inner page and the sites2.0 page respectively.

Defining the regions in Drupal 6 was a breeze using the info file. With Drupal 6 the different regions in your template, the css and js files in the theme get consolidated in the info file. We had to bring in quiet a few regions in both the home and the Sites2.0 pages as they had random graphical elements.

Module Highlights
CCK: Used this module to quickly create our Contact us and Request Proposal forms.

Nice menus: Used this module to create dropdown menu system. We enabled the primary menu by calling the nice menu theme function directly in our tpl.

<?php print theme('nice_menu_primary_links'); ?> 

Custom mail module:
Before writing a custom Drupal 6.0 module it's good to read the following Drupal handbook pages:
How to create a module for Drupal 6.x. and
Overview of Drupal API changes in 6.x.
The documentation for Drupal 6.0 is fabulous.

We use this module to send mail as response to users submitting the contact us form and the Proposal submission form. We have also used this module to help us generate HTML mailer for our clients. To Create HTML mails we ran into some problems as the drupal mail hooks for Drupal 6 were totally different and new compared to the mail functions in Drupal 5. In Drupal 6 we use the hook_mail create a mail, and use hook_mail_alter to set the mail type from plain text to HTML format in the mail header.

The New Drupal 6 mail hooks used:

SEO Modules
Enabled clean URL and used pathauto to auto generate search engine friendly links
We are still working Globalredirect module before we use the same to redirect node/n style links to the new links. The Globalredirect module not readily available for Drupal 6.

Enable an interface to enter meta tags and keyword for every node
We embedded the google analytics code on to our .tpl files

To preview our Portfolio, Click here.

Devaraj, Kamalakannan, Abdu, Muhammad

Technology Head - Drupal Competency Center
Netlink Technologies Ltd.


Shyamala’s picture

Drupal 6 mail hooks

Sending an e-mail works with defining an e-mail template (subject, text and possibly e-mail headers) and the replacement values to use in the appropriate places in the template. Processed e-mail templates are requested from hook_mail() from the module sending the e-mail. Any module can modify the composed e-mail message array using hook_mail_alter(). Finally drupal_mail_send() sends the e-mail, which can be reused if the exact same composed e-mail is to be sent to multiple recipients.

view the details at

What this means is by introducing the new mail hook system, we can associate mails with our modules easily and these mails can be easily reused and overidden by the mail alter hook.

Theming at Lullabot workshop
I have shared some of my learning at the lullabot workshop in my blog:

Technology Head - Drupal Competency Center
Netlink Technologies Ltd.

Devaraj’s picture

yes.. that was nice experience working on Drupal 6.x , we created custom modules, mailer modules etc., as discussed by shyamala (Technology Head -DCC) .. and that was nice information that she had narrated ...

Netlink Technologies Ltd.