Drupal - Part Two
By dougm on Sep 03, 2009
Designing a good website is a lot of work. Keep it Simple is always good advice. Also, take things one at a time and make sure they work before going on to the next feature. In all cases, you should think carefully about what you want and how you might want to achieve it. OpenSolaris plus Drupal can make this process a bit simpler and easier to recover from mistakes. The ZFS snapshot mechanism can save the current state of your configuration and let you go back to a previous, working version, if you do something wrong. Drupal usually can let you undo things, but if you don't remember what you did, the snapshot makes it easy to recover.
If you are looking for more information on how to do things with Drupal, there are a number of good books on the subject. The series by Packt Publishing have received good reviews. There are others available as well.
You should also register on the Drupal site so that you can post to the forums. There is also a security list that will let you know when a security problem has been found that you might want to fix on your site.
Some will want to jump in and make the site look better, but sometimes it is best to get it working with the necessary functionality and change the theme later. That is one of the advantages of the Drupal themeing mechanism. You can change themes at any time and the website gets a new look but the underlying functionality is going to continue to work. The default theme, Garland, is plain but functional. Work on some of the other features while thinking about what you might want it to look like. Then explore the available themes that you can start with. There are quite a few to choose from.
What are the basic features you might need? You should list these and then see which Drupal modules might meet your needs. Take some care here since there are usually multiple modules that might meet your needs, but some may not work on Drupal 6 and others may work but are no longer supported. This is usually fairly clear in the module description.
Are there third-party applications that you might want to use? A number may already be integrated into Drupal. One of my favorites is Gallery 2. This application has been integrated into Drupal such that it appears to be part of the Drupal system. Google maps is another that can be easily used.
Drupal's built-in forum system is adequate for a lot of users, but you may want something more elaborate. There are others that have integration modules available for Drupal as well. The same is true for blog support. If you need a website with different sections that have different capabilities, you might want to explore Organic Groups. Make sure you understand how they work before plunging in since OG can be confusing.
When downloading new modules, untar the file into sites/all/modules in order to keep add-on modules separate from the core modules. Once a module is installed, you can go to the Site Building/Modules section of the Administration section of your website. First you enable it and then you can go to the administer by module page to configure the module.
Along with the various modules available, there is a full implementation of roles for users with access control based on the role(s) a user is assigned to. The most useful feature here is that you can delegate the ability to post text to some users and not allow others to even see it.
What does all of this have to do with small systems? It doesn't really take much of a server to be able to support Drupal unless you are going to have a very large number of active users. Some of the small servers available today are much more powerful than some of the big servers of only a year or two ago. Memory is usually the limiting factor, so choose a system that has 2 or more gigabyte address space for such a server.
Back to themes. The default themes in Drupal are functional, if not the most exciting. They all pretty much let you change the title of the website, provide a slogan and/or mission statement and most let you place your logo and favicon on the site as well. Themes, like modules, should be installed in the site specific directory. Themes go in sites/all/themes. Some interesting themes that are availbable are Zen (an easily customized and modifed theme), Acquia Marina, Acquia Slate, Abarre, and quite a few others. Once installed on your system, you can easily see how your site will look once you configure the theme. It is also possible to allow users to choose which of a selection of themes they will see when logged in.