The 11 Most Important Things To Do After You Install Drupal 6

So you've decided to choose Drupal for your web project right? Good decision. I won't repeat all advantages of Drupal here, but this is a best platform for your web project unless you want to stick with PHP Framework and to start your development nearly from a scratch. Ok, I guess you already read all these articles about 'Top 10 things to do with Drupal' and bla bla bla... Well there are maybe some useful, but most of those tip lists are real content bullshit. Sorry for the strong word 'bullshit', but I'm tired of surfing and scanning through obvious steps as 'Create content' or 'register user 1'. I will tell you about The 11 Most Important Things To Do After You Install Drupal. You will do this earlier or later, but after this checklist you will do them from the start and will save your precious time in future. Ok, let's start:

1. Disable Unnecessary Core Modules

Go to modules and disable: Color module - you don't need this cause you will use your very own theme and won't colorize Garland (We're making a serious project, right?).

2. Enable Necessary Core Modules

Go to modules and enable: Path module - you'll need this one to have a control over Drupal paths. Also enable PHP filter module, it allows embedded PHP code/snippets to be evaluated. And don't forget about Search module, it will let your visitors search on the site.

3. Make It Easier To Navigate

Install Administration menu (http://drupal.org/project/admin_menu) module - this module is a real time saver. Install it right after steps 1 and 2 or even you can execute step 3 right before 1 and 2. The module renders all administrative menu items below 'administer' in a clean, attractive and purely CSS-based menu at the top of your website. It contains not only regular menu items - local tasks are also included, giving you extremely fast access to any administrative resource and function your Drupal installation provides. This is a must have modules for every developer and site adminstator. Access any menu fast and easy. I remember my days without this module, this was a real nightmare surfing through multiple Drupal menu links.

4. Feel The Power Of Content Type Creation

Install CCK (Content Construction Kit http://drupal.org/project/cck) I'm sure, someday this module will enter Drupal core package. CCK works as its name sounds, it let's you to contstruct and content type with any fields set you wish. Want a fields with select boxes or Imageuploads or maybe, radio buttons or check boxes? No problem, CCK's posibilities are nearly endless. You can't live without this module.

5. Control Category and Content Output

Install Views (http://drupal.org/project/views). Views is one of the most popular Drupal modules. It works in close with CCK (however it can live without CCK). The Views module provides a flexible method for Drupal site designers to control how lists and tables of content are presented. 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. However I love the fact Views exists, I personally don't use it much because of somewhat expensive queries it produces. But it will work for most of your tasks. Fully themable and flexible.

6. Configure The Way Drupal Works With Urls

OK, we have already enabled path module. Let's install three more. Pathauto (http://drupal.org/project/pathauto), Token (http://drupal.org/project/token) and Globalredirect (http://drupal.org/project/globalredirect). Pathauto and Token work together and will help you to automate clean url and aliases. You can define the structure of the path depended on content type, taxonomy, vocabulary, etc. Global redirect is another handy modules which will save your life from Google Double Content penalty nightmare. It will 301 redirect your 'node/11'-like paths to their aliases.

7. Tune Your SEO

I'm sure you know about this simple rule: no SEO, no visitors, no customers, no money. So you need a SEO friendly site! There are two main modules for SEO to be installed: Nodewords (second name Meta Tags, http://drupal.org/project/nodewords) and Page Title (http://drupal.org/project/page_title). Nodewords module allows you to set some meta tags for each node, view or panels page. Page Title allows you to set custom page titles for any node (page or content type), also you can specify patterns for how the title should be structured.

8. Configure Search

One of the main features of every site is the Search. Web Users often use web site search and this feature should be properly configured, you need to build a proper and regular built-in Drupal search index. Go to Site configuration -> Search settings and check your settings.

9. Don't Forget About a Backup

Always do backups, especially, before doing any significant changes. There are plenty of various solutions for FTP and MySQL backup, but start with small: install Backup and Migrate (http://drupal.org/project/backup_migrate). Backup and Migrate simplifies the task of backing up and restoring your Drupal database or migrating data from one Drupal site to another. It supports gzip, bzip and zip compression as well as automatic scheduled backups. Very useful and saves data and time, the two most precious things for a web developer.

10. Configure Your Cron

I won't explain how to configure cron jobs on your server. This is simple, just check your hosting provider's FAQ. But don't forget to do this in order your search re-indexing and sheduled backups to work. The path you need to call is http://www.example.com/cron.php

11. Buy a Good Drupal Book

There are lots of Drupal oriented books, but there is one essential, written by Drupal developers: Pro Drupal Development, Second Edition. You can get it from Amazon. (CLICK HERE). This one will help to understand Drupal and how to develop modules, so you will be able to change any module or write a new one from a scratch.

UPDATE (07/08/09):
The following steps were added thanks to useful comments of my readers:

12. Server Tweaks

Bump your memory limit to 96MB. Most of hosting providers allow to do this, if yours doesn't, leave him with no regrets. You can extent a memory limit either in htaccess or settings.php.

a) For .htaccess tweak: edit the .htaccess file in the Drupal root directory. Look for the section:

<i># Override PHP settings. More in sites/default/settings.php<br /># but the following cannot be changed at runtime.</i><br />

and immediately after this add the following line:

<i>php_value memory_limit 96M</i>

b) If you're afraid of tweakening .htaccess, you can do the same with the sites/default/settings.php file. Locate the PHP settings section and add the following line at the end of that section:

ini_set('memory_limit', '96M');

Why did we set limit to 96M? Well, 96M is suitable enough for most modules, for example Image module requires 96M of memory to operate correctly.

13. Lower The Number Of Http Requests

Drupal modules produce numerous .css and .js files. Almost every enabled module adds its own files. The more .css and .js files you have to load on every page, the more http requests your server should serve, the longer loading and page rendering time your visitors will experience. But there is a nice solution built in the Drupal: enable caching and css /js compression in admin/settings/performance. This will compress all of your .css and .js files in one combined file each which will reduce the time of page rendering and the number of http requests. As a result, your pages will load much faster and your server will experience lower load. But use this function wisely, enable it only on a production web site.

As a Conclusion

Drupal offers endless opportunities for Web developers and for casual users too. I hope these 11 first steps will help you to unleash the power of Drupal. If you have additions to this post, feel free to contact me here!

regards,
Tim

Comments

Submitted by Karl Craig-West on Tue, 2009-07-07 15:12

Thanks for this great guide.
I've even picked up a couple of useful bits of info that will help with my future Drupal Development.

Cheers,
Karl

Submitted by Ringo on Tue, 2009-07-07 16:46

Hey Tim! Thanks for the tips, they're really useful. I own Drupal development studio, can we talk about work with you?

Submitted by Joan on Tue, 2009-07-07 19:26

nice tips....thanks a lot...I'd add some words about sitemaps module, it is very useful and essential too!

Submitted by Lisa Rex on Wed, 2009-07-08 06:04

Thanks for this! I'm kicking off my first Drupal project and I'll ensure to incorporate these suggestions.

Submitted by Nidal on Wed, 2009-07-08 10:48

yeah I'd add a few more things :

* Server Tweaks ( bump memory to 96M either in htaccess or settings.php etc.)
* enable caching and css /js compression ( this really improves performance and lowers the number of http requests)

cheers

Submitted by Tim on Wed, 2009-07-08 11:23

Wow, these tips are very useful! Wonder how did I forget about them!

Submitted by Laura Robeson on Wed, 2009-07-08 18:25

Great post! Global Redirect was a new module to me, even though I use Pathauto already. I also installed the Page Title & Meta Tags modules per your recommendation.

I strongly agree with your recommendations of Administration Menu, Backup & Migrate, and of course CCK & Views. CCK + Views = magic, they should be core.

Poormanscron is a good module for people new to the cron concept, it's a very simple solution.

Good book for beginners: Front End Drupal by Konstantin Käfer and Emma Hogbin. That really helped to get me over the steep learning curve.

Submitted by Olympia on Fri, 2009-07-10 15:37

Hi Tim
Nice work! very useful advise.. keep up the good work, I'll be back!

Submitted by Alex on Sun, 2009-07-12 14:34

Good article. All this modules are included into Drupal-Builder.net tool too - great minds think alike ;)

Submitted by Israel Estrada on Wed, 2009-07-29 21:32

very nice!!

thx for sharing!

Submitted by Israel Estrada on Wed, 2009-07-29 21:17

Gracias por los tips!!!

Excelentes ideas para desarrollar todo tipo de administradores de contenido!

Congratulations dude! and thanks again for this =)

Submitted by Oli on Mon, 2009-08-03 03:26

Great stuff! Many thanks

Submitted by ajay on Mon, 2009-08-03 09:40

Thank you so much !
It is really helpful.

Submitted by Azat on Tue, 2009-08-11 08:21

Hi!
Very good advises. I am novice in Drupal, but I think it's very helpful.

Submitted by andhe1983 on Sun, 2009-08-30 13:33

That was a very helpful article

Thanks

Submitted by Owen McNamara on Tue, 2009-09-01 16:22

Thanks, as a new Drupal user I found your article very helpful to get me going.

I also did a review of a survey recently comparing Joomla and Drupal that some people might find interesting. Long story short: Drupal but both good. But the results are very interesting.

http://owenmcnamara.com/2009/08/08/comparison-of-drupal-and-joomla/

Owen

Submitted by Nico on Sun, 2009-09-06 00:18

Great wrap-up !
A must to have module for me is Boost (http://drupal.org/project/boost).
A cache system (every page is cached as physical html file on your server) and will be served at light speed to your anonymous visitor (need mod_rewrite)
Regards.

Submitted by Alkaaran on Sun, 2009-09-13 13:08

In my opinion, Admin is more user-friendly than admin_menu, it provides a cool administration interface : http://drupal.org/project/admin

Submitted by Tim on Tue, 2009-09-15 00:28

Admin looks nicer, I agree, but it is not dynamic as admin_menu. With admin_menu you can do things much faster. I often combine admin with admin_menu. Admin is more for customers who want to see a way cool backend.

Submitted by Jono Childs on Fri, 2009-10-02 10:51

How Do you install modules?

Submitted by Anonymous on Tue, 2009-10-13 06:30

Found this in the following pdf:
http://drupal.org/files/drupal_cookbook_10_25_2008.pdf

Installation: installing a module or theme...

1. Go to the Drupal site and click on the "Downloads" tab. Then select either "Modules"
or "Themes" depending on what you're after.
2. Locate the module or theme you want.
3. Make sure there is a version for the version of Drupal that you are using. D5 modules
and themes will not work on D6.
4. I always click on "Find out more" and read the stuff again. This gives you the chance
to see if there is support for your release of Drupal. You can also look at pending bugs
and feature requests - it might change your mind.
5. Download the proper release. (I put them in a Drupal folder in "My Downloads.")
6. Unzip the downloaded file (I use WinZip). It may tell you that there is only one file in
the zipped file; click "yes" or "OK."
7. Extract the code to to your /sites/sitename/modules or themes folder. If you are not running
multiple sites, this would be /sites/all/modules or themes.
8. That's it! Now you need to enable it.

Submitted by Drude on Wed, 2009-11-11 08:36

I drove myself nuts.

Don't for get to spell "modules" right :)

Submitted by Graham on Fri, 2009-10-23 22:13

I agree it would be useful if it didn't assume you knew how to do this... but it's not difficult.

Download the module from the links in the instructions above. Unzip. FTP to upload the folders into /modules directory. Then go to Administer/Site Building/Modules and select to activate. Save Configuration.

Submitted by Chris on Tue, 2010-01-12 23:07

Make sure it goes within /sites/foo/modules, where foo is either all, default, or the site folder itself, like /sites/foo.com/modules, and not just the /modules folder. Where you put it within the /sites only matters if you're doing a multisite setup, in which case putting it in the all folder will make it available to all sites in your multisite setup, and every other folder will make it available to just the site folder you've put it in. Otherwise, I tend to just put everything in the foo.com folder for portability.

One of the reasons that you want to do it this way instead of dropping it in the /modules is that when you need to backup or migrate, all you need is a copy of the sites folder, and you can just grab a version of Drupal from drupal.org.

The same applies to themes - put them in /sites/all/themes or /sites/foo/themes instead of /themes

Submitted by Drude on Wed, 2009-11-11 08:37

Thanks for this helpful jump-start.

Submitted by Azeem on Sat, 2009-11-14 13:05

I am an SQA Engineer and wanted to learn Drupal so that I can recommend more sane resolution of known bugs in the websites that the developers of my company develop. And I must say, this article is really good for newbies to get started pretty fast. One thing that I would like to say is that people must have an understanding of the basic concepts of Drupal (http://drupal.org/node/21951) before actually reading this article. Peace.

Submitted by willem on Thu, 2009-11-26 17:11

I don't think nodewords will do a lot of good. If you're serious about seo, be semantic and install seo_checklist.

Submitted by Sajith on Wed, 2010-01-20 08:03

Very Nice Tips. Thanks.....

Submitted by Rich Brill on Fri, 2010-01-22 00:54

I found these tips very useful indeed.

The admin_menu module really is a lifesaver, really!

It beats having to navigate a tree structure on the left hand side and it also feels more stable as though it's part of a solid piece of software (as appose to a web interface on the server itself) - great UI.

Submitted by Cory on Fri, 2010-02-05 02:20

Awesome, thank you for this starter guide.

Submitted by Law on Fri, 2010-02-12 00:07

WYSIWYG stands for What You See Is What You Get and it allows you to edit a page in a visual fasion instead of having to use the HTML code. Although I highly suggest you learn at least some basic HTML if you are going to be doing much with Drupal, I also know that sometimes its nice to be able to create content fast with out worying about the HTML code.

Submitted by jpw on Thu, 2010-03-04 22:13

Do you plan to build on this success with a new version for Drupal 7? Or is it mainly the same?

Submitted by Tim on Wed, 2010-11-03 23:08

Let's wait for D7 to be released.

Submitted by poi on Thu, 2010-03-11 01:06

I ve just started using Drupal, and I haven t yet finished my first web site
BUT I Have to THANK you for such a great guide, it has helped me TREMENDOUSLY, great support!!

Submitted by Tim on Mon, 2010-03-15 17:41

You're welcome, Poi. I'm glad that this one was helpful for you.

Submitted by Yukti on Tue, 2010-04-27 22:02

Great post , good work Tim !!

The information provided is a big support for newbies , who really wander after installing the basic drupal setup.

I generally use PLIGG CMS, but compared to Drupal, I am feeling PLIGG provides only at 30% of what drupal does...

Cheers
Yukti.Khanna Vig

Submitted by Luis Quintero on Thu, 2010-07-29 20:18

Hello Tim! Thank you for your steps. They helped us a lot.

Submitted by Enzo on Wed, 2010-11-03 20:43

Just to say... thank you. Your tips are very useful and enroute my newbie-mind, thanks a lot Tim.

Submitted by Tim on Wed, 2010-11-03 23:07

You're welcome Enzo. Feel free to ask here if you have questions.

Submitted by Helene on Fri, 2010-11-19 17:31

Hi Tim,

I'm a super newb, I see that you promote Pro Drupal Development, Second Edition book... But since I'm just barely learning all this and have little background in CSS and other programing language... Could you please tell me if I will like that book better than the O'Reilly? There is also a Drupal for Dummies book, but I think it might be too basic.

My background is Web Writer, I used Contribute and WordPress, and a Word-based (MS Office) CMS. I'm a quick learner!

I am reading through the different Beginner pages on Drupal.org and so far it's going well.

Thanks in advance for your tips, very helpful!!!

Submitted by Tim on Sat, 2010-11-20 15:42

Hello Helene,

I had a chance to look through Drupal for Dummies book and it is very very basec. Moreover, I don't like this 'for Dummies' series because reading this you can really become Dummy.
If you're going to master Drupal development, then the only book you need is Pro Drupal Development, Second Edition (Third is coming out soon! It's gonna be about Drupal 7) and http://api.drupal.org + time to read and practice. That's all you need. Don't spend your money on lots of those books. Buy one and use it!

Submitted by Forrest on Tue, 2010-11-23 15:30

Hi Tim,

Like others here - I'd like to thank you kindly for a super post - it has already helped in reducing the steep learning curve that comes with plunge into Drupal.

Now - don't shoot me for this, but for my initial set-up and configuration of my first Drupal site, I'm using Godaddy.com's hosting solution. Installing Drupal 6.19 was a doddle. I know there are plenty who say Godaddy's performance for Drupal is poor - don't worry, if I run into that, I'll jump onto a fast host quickly.

In the mean time... I'm wondering if you can give advice on one aspect. With all the modules, themes, etc one needs to get a Drupal site up and running - it seems very, very inefficient for me, at the bottom of Africa, to download a filename.tar.gz to my client machine, - un-tar/un-zip it, then upload it onto my Godaddy account.

Is there a simple way to simply download the various modules, etc. directly from within my Godaddy account and unzipping it on the Linux instance on which my Drupal is running? I haven't seen any way to break out into a shell / command-line window from within my Godaddy Linux account - if I could get there (with sufficient privileges) I could figure it out from there.

Any thoughts? Thanks in advance.

- Forrest

Submitted by Tim on Wed, 2010-11-24 01:15

Hi Forrest,

thanks for kind words, I'm glad this article helped you.

Without shell access to your GoDaddy account you won't be able to do this, so ask them to give you shell access and use linux commands like wget and tar.

Usually, I develop a website on my local machine and then upload it to the server. And I use Drush to automate boring tasks as download/install modules. Read my recent tutorial on Drush here: http://timonweb.com/drush-your-drupal-development-install-and-get-know-d...

Submitted by Serhat on Sun, 2010-12-19 20:24

Hi.
I am using Drupal 6.20 with PostgresQL 8.4 and page_title gave me some headache. turns out it is not very friendly with the PG db, so i just disabled that module and everything is fine now.
thx for the article..

Submitted by The Way on Sat, 2011-01-15 08:27

This is very useful, thanks Tim

Submitted by sambeats on Thu, 2011-02-17 21:38

Thanks for the tips, i'm going to get the book so i can get a better understanding of drupal

Submitted by detroitgeek on Sun, 2011-03-13 14:09

Please post version numbers with your post. I was having problems with v7 and ran across this page for some help and realized I was reading something written for v6

Submitted by arshpreet on Sat, 2011-05-28 14:51

gr8 post,, thanks for such a good advice

Submitted by Samuel on Wed, 2011-06-01 22:36

Thanks a million, I am embarking on my first drupal managed site (moving from nucleus). These tips have come in handy.

Add new comment

You are here