Configuring Drupal

3/12/2005

In my previous post I explained that I finally chose to use Drupal for a new web site, after comparing it with several other systems. However, downloading and installing the default Drupal installation was still far from what I needed for the site: I still needed to download and install additional contributed modules, in order of importance to me:

  • e-publish is a simple great module that allows to put together a group of posts as a publication (a magazine, say) with different issues.
  • image permits users to upload and store images (obviously). I still do not know why this module is still not part of the core of the system.
  • img_assist provides a simple interface for users to upload figures in to posts, including thumbnails. Very useful for people with little experience in HTML.
  • flexinode provides a simple interface for administrators to create new content types, and I used it to create a calendar event type, which is then managed by the next module.
  • event shows a calendar interface for coming events, as well as as a block for the front page containing a list of coming events. I still find this module a bit lacking on configuration, and I need to do some further work with it to display exactly what I want.
  • quicktags is a simple java script menu to insert basic HTML tags (like strong, em, blockquote and a). I first tried with tinyMCE an interface to a full-blown WYSIWYG rich text editor; however, loading the editor made loading posting pages a bit sluggish. I should probably try FCKeditor an alternative WYSIWYG control when I have some time. There are modules for Markdown and Textile available too, but I do not want to push users of the site to learn additional syntax to post some news.

As an alternative to downloading the core and separate modules, I am aware of at least two ‘distributions’ (CivicSpace and CivicCRM) that package systems for NGO and grassroots organisations. This may be an easier way to go for people not inclined to trial and error.

Now, reading again this list let me realise that this post is not really about configuring (sense tweaking the options) the system, but more about tailoring (sense choosing modules) it. I am impressed with the amount of work going in to the development of Drupal and the good quality of the documentation. A somewhat minor drawback is the small number of good quality ‘themes’ (combinations of templates and CSS) freely available for the system, particularly compared to the number available for E107 and even more here.

Sharing a database

I have cheap hosting for my site, which allows for a single MySQL database. It is still possible to have more than one program requiring access to MySQL, but this makes using table prefixes a highly desirable option to avoid table name clashes between applications (for example, more than one program wanting to have a ‘users’ table). All programs that I tested allow for easy use of table name prefixes, sometimes in an easy to use option at installation time (like E107 or Mambo) or a more obscure ‘after installation’ configuration (like Drupal). In Drupal it is necessary to set the variable $db_prefix to a value, for example using ‘drupal_’ as the prefix one would use $db_prefix = 'drupal_'; in the settings.php file. One thing to remember is that when adding modules that require creating new tables, those tables must have the same prefix.

Filed in software, web

No comments yet.

Write a comment: