Must-have Drupal modules for a new website
BY webmaster
3 years ago
comments comment

Drupal has grown to be recognized as the most powerful and practical modular framework used by numerous website developers and business owners. The CMS community has adapted to the versatile and extremely functional structure of Drupal very quickly and Drupal modules have risen high on the must-have charts of web developers.

As developer of a Drupal Website, you have such humongous choices and you will do well to take a quick peek into the best ones that are absolutely necessary for Drupal web development.

For Developers:

Back-up and Migrate: An absolute must-have for developers when it comes to migration through environments, as it allows you to dump the site's database without the cache tables. If your back-ups run on cron runs, this one is ideal for scheduled back-ups.

Devel: You can’t do without this debugging tool for sites.

Stage File Proxy: Downloading of images on demand is definitely required when you are testing a site locally and this Drupal module exactly does that.

For Site Builders:

Context: As the block page or admin page has severe curbs due to its unreadability on large sites, Context comes as a real savior as it is much more powerful and allows stuff, other than block placing, like adding body classes to various sections of the site. To top this, it’s also exportable.

Date: With view integration as a super feature and JavaScript-based pop-up calendars, this useful Drupal module allows date fields to be included in the content easily.

File Field Sources: If you need to add test content to a site or want to source a file from an outside URL, then this is the module you must have in your arsenal. It also allows the site builder to reference a current file from a file field, thus generally making life easier for you.

For Better Performance:

Memcache: Using this module for Drupal website development is a great advantage, as it helps the site scale and can be used in place of the database for cache tables.

Boost: Static page caching for Drupal websites is provided by using Boost and enables scalability boost for attracting anonymous traffic regularly.


MetaTag: This wonderful Drupal module is definitely a must-have on your agenda as it allows adding of Meta tag info on the site and this includes node content. MetaTag has replaced Nodewords which was widely used in Drupal 6 despite its bug issues.

SEO Checklist: As a Drupal theme user, you simply cannot do without this Drupal SEO checklist as this versatile module uses the Drupal SEO best practices to check the website for appropriate search engine optimization.

Over the past 9 years, Zyxware has been developing innovative and sophisticated Drupal-based solutions for different verticals. Using agile development methodology, we design high-performance websites with integrated features, appropriate for your specific business requirements. We have a pool of professionally qualified and experienced Drupal developers who will support you through out the different phases in the project life cycle. Our fully customized Drupal solutions will help you achieve positive results by considerably enhancing performance, minimizing the project costs and improving business value.

If you would like to get more information about our Drupal development services, please contact us.



on 07th November 2011 / by webmaster
Drupal uses a reasonably powerful mechanism to create, prepare and send emails generated within the system. We maintain two modules related to emails in Drupal - Mail Merge and MailQ (Mail Queue) - and get the opportunity to work with the mail subsystem in Drupal. Here is a brief write-up on how the mail system works in Drupal. The workflow when sending a mail with drupal_mail 1) Module calls drupal_mail drupal_mail($module, $key, $to, $language, $params = array(), $from = NULL, $send = TRUE) The params array should have all the necessary information related to the mail that is to be sent. Do note that the mail is yet to be prepared and that will happen only during hook_mail calls. 2) drupal_mail then calls 2.a) hook_mail of the module calling drupal_mail hook_mail is to be used by the module to copy parameters to $message. The following parameters are already mapped back into $message from drupal_mail $message = array( 'id' => $module .'_'. $key, 'to' => $to, 'from' => isset($from) ? $from : $default_from, 'language' => $language, 'params' => $params, 'subject' => '', 'body' => array() );Drupal mail also sets the following as default headers $headers = array( 'MIME-Version' => '1.0', 'Content-Type' => 'text/plain; charset=UTF-8; format=flowed; delsp=yes', 'Content-Transfer-Encoding' => '8Bit', 'X-Mailer' => 'Drupal' );If default_from is present it is used to set the following headers as well. default_from is either the site_mail if set or from php.ini sendmail_from parameter $headers['From'] = $headers['Sender'] = $headers['Return-Path'] = $headers['Errors-To'] = $default_from; $message['headers'] = $headers;2.b) hook_mail_alter across all modules Other modules can then alter $message as required via the hook_mail_alter call. 3) If $send parameter of drupal_mail is not set to FALSE drupal_mail will call drupal_mail_send 3.a) drupal_mail_send calls drupal_mail_wrapper($message) if smtp_library is set and the module is present. This is how the different modules like mimemail or smtp mail hooks into the mailing system in Drupal. drupal_mail_wrapper is expected to send out the mail and if smpt_library is not set then drupal_mail_send will try to send out the mail using the php mail function. How MailQ works in Drupal by plugging into drupal_mail MailQ is a module designed to allow drupal sites hosted on shared hosting servers distribute the email loads on the system across time to work around the hourly email limits typically set by the hosting providers. MailQ is designed to catch all mails sent by drupal by setting up a drupal_mail_wrapper which will queue all mails during non-cron regular site operations and which will send them out during cron runs. MailQ sets the smtp_library to itself forcing drupal_mail_send to call the drupal_mail_wrapper from mailq during normal operations. Mailq drupal_mail_wrapper will then store all the messages into the database queue and then process these in batches during cron runs by calling drupal_mail_send Web Development Drupal Drupal 6 Drupal Modules Drupal Development Leave a reply Your email address will not be published. Required fields are marker *

on 04th December 2011 / by webmaster
We have recently been toying with the Drupal API module in an attempt to set up our own Drupal API documentation site just like Lullabot did. As of today we have managed to set up something that is fairly functional and somewhat similar to the documentation site. Check out our own Drupal API reference site. The site currently contains documentation about the top 500 Drupal modules and their D5, D6, D7 and D8 versions in addition to the documentation for Drupal 5, Drupal 6, Drupal 7 and Drupal 8. We had used API module and Grammar Parser module to set up the site on a default Drupal installation. The instructions as given at was followed to set up the site. In the process of setting this up we came across multiple limitations of the API module because it was never intended to generate documentation about so many different modules and so many different versions of each modules. We had made some quick fixes to make the site functional and get this system up on a trial basis. We also added a custom menu to list drupal projects that have been documented in the site as it was lacking in the api module. Because this is still an experiment we have not enabled commenting on the site. Boost module has been set up on the site because the site has been pounded by bots recently because of the huge number of individual URLs in the site. Drupal Drupal Modules Drupal Development Leave a reply Your email address will not be published. Required fields are marker *

on 06th December 2011 / by webmaster
Running Drupal on a shared hosting environment could become a challenge when the site starts getting a lot of visitors. So f you run your Drupal installation on one of the shared hosting providers like GoDaddy, Hostgator, Dreamhost etc and your site is reasonably popular then it is likely that you would have run into performance issues if the site is not configured correctly. If you configure your Drupal site correctly you should be able to stick with shared hosting for a longer period of time before moving on to dedicated hosting. Here are some easy to make performance tips that could help you speed up your Drupal site while still on your shared hosting. a) Configure Boost for handling anonymous traffic If you have significant amounts of anonymous traffic setting up the boost module will help deliver your pages to anonymous users without bootstrapping Drupal at all. b) Configure caching Ensure that you have configured caching correctly, enabled block caching and have enabled CSS and JS aggregation. c) Configure views caching Make sure that you have configured views caching options correctly. The caching options should be set correctly based on the context of the view. If you don't do this right you will end up running after a lot of stale/irrelevant data issues on your site. d) Set up a CDN If you can afford to, go ahead and purchase a CDN account from a CDN provider like MaxCDN and set up your site to deliver static content via CDN. This not only takes the load of the delivery of your static content off your server but also speeds up page load times considerably. These are some of the quick fix solutions for speeding up your Drupal site. There are lot of other ways of speeding up your site like removing unwanted modules, removing unwanted css, moving images to sprites etc but these would require much more efforts and would also require a strong understanding of your specific system and the way you have built your site. If you need help with performance tuning your Drupal site get in touch with us. We will be happy to work with you to solve your performance issues for you. Drupal Drupal Development Drupal Performance Leave a reply Your email address will not be published. Required fields are marker *
Leave a reply
Your email address will not be published. Required fields are marker *

Filtered HTML

  • Web page addresses and email addresses turn into links automatically.
  • Allowed HTML tags: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type='1 A I'> <li> <dl> <dt> <dd> <h2 id='jump-*'> <h3 id> <h4 id> <h5 id> <h6 id>
  • Lines and paragraphs break automatically.
The content of this field is kept private and will not be shown publicly.
CAPTCHA This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.