This week we had Dan Brickley visiting DERI. Dan co-started the FOAF project in 2000, and is also involved in the SIOC project which is mainly based here in DERI. That was the occasion to have several sessions of brainstorming about various aspects of SIOC including dataportability (John presented his slides), the recent change in the Dublin Core ontology, URIs and best practices for publishing SIOC data, and finally some domain modifications (some of them came from the Drupal RDF Schema I've been working on). This lead to a few changes on the ontology. A digest of these sessions is being written.
While he was in Galway, Dan expressed an interest in Drupal, which is already used on sioc-project.org. We had a few opportunities to meet and I demoed him the flexibility of this great tool. Laura joined us for a bit, and I thought it could be useful to share this, so below is the rundown of what we did in a few hours.
Let's start with a short background. Beside the benefit of providing a Free Open Source Content Management System that saves you boring static HTML page editing, Drupal is a great, active community which constantly develops and maintains Drupal on the cutting-edge. You might have come across some Drupal sites before without knowing it. "Big Companies" already use Drupal, such as Sony BMG Myplay, MTV UK, Ubuntu, Fastcompany, OSI, Amnesty International (which is a good example of Drupal's internationalization in Arabic, French and Spanish). Dries Buytaert, the founder of the Drupal project, maintains a list of Drupal sites on his blog.
The installation of Drupal was pretty quick. It took longer to create the database on Dreamhost than installing Drupal itself. Drupal ships with many features in its core and relies on external modules to extend its capabilities. This is to avoid bloating the system with useless feature, since every site is different and will require different components. More than 2000 modules are hosted on the Drupal.org repository, and are classified by categories. Most of the work when setting a Drupal site involves picking the modules you need, and install them.
tar zxvf are your friends if you can SSH your server, or else use FTP. Note that the modules you add should be placed in
sites/all/modules. There is also apt-get style module for Drupal called Drush, which allows you to automatically download and install any module.
One of the first thing we looked at was the OpenID support. After setting up a few accounts with our openids, we moved on to the following aspects.
?q=of the URLs in "Site configuration" > "Clean URLs".
node/45and automatically generate nice URLs depending on patterns you define.
I also briefly showed Dan the multi-site feature I had already setup on one of my servers, which allows you to run as many Drupal site as you want on the same code base. If you wonder about a wiki functionality in Drupal, have a look at: Oh wiki where art thou?
The next things to do that we didn't have time to cover are
The default theme on fresh Drupal install is garland. Theming is essential when you want your site to look different and unique. Start off by looking at the themes available on drupal.org, and find the one that looks similar to what you want. Many of them are XHTML tableless themes. Don't look at the colors/images, but rather focus on the structure of the layout itself. Download and extract the theme you like the best in /sites/all/themes, and rename the theme directory to something of your own imagination. For example if you start with the amadou theme, rename the
amadou directory to
mytheme. Then you can start hacking away and make it resemble to what you like. The file
page.tpl.php is the general template. I'd recommend trying to do as much as possible via CSS in
style.css, and resort to changing the HTML as little as you can. If you already have an HTML template from a previous site, you can look at
page.tlp.php and adapt it. Zen and Bluebreeze are great themes to start from, as they are simple and easy to adapt. They are also XHTML tableless and will ensure your site runs on most of the browsers. The Dojo lesson 28: Theming like a pro explains these steps in details. Definitely worth it