Category Archives: Drupal

About my experiences with the open source CMS Drupal.

Another big launch! Introducing Mellini’s Manuscript in Verse

Last week my team at the Getty launched our latest big project, Pietro Mellini’s Inventory in Verse, 1681. Five years of work, contributing scholars from multiple countries, two different Drupal versions, and development team members coming and going have finally led to this first of its kind (for us, anyway), completely digital publication of scholarly work, which translates and interprets this unique manuscript of the inventory of Pietro Mellini’s art collection, written entirely in verse.

Homepage of Mellini publication
Pietro Mellini’s Inventory in Verse, 1681

The first half of the project that began in 2000, which I did not work on, involved building a scholar workspace in Drupal 6, which enabled the scholars to collaborate on the same material from the comfort of their various countries.

The second half, the part where I came in, was to build a public-facing, fully-annotated and citable digital publication of their work, which we built in Drupal 7.

Easily the two coolest features are the manuscript view pages and the list of artworks page.

The Manuscript Viewer

Mellini / Manuscript page comparison viewer
View each page of the manuscript, compare it to its transcription or English translation, and see the scholars’ notes on particular passages.
  • Visit every page of the manuscript and zoom in to check every little detail of Mellini’s writing.
  • View the transcription and/or English translation of every page.
  • View the different versions side-by-side.
  • Read the scholars’ notes for select passages by clicking on the highlighted selections.
  • Use the linked margin notes to find out more information about each work.

List of Artworks

Mellini / Concordance example
Find out how artworks included in the 1681 inventory compare to how they were listed in the more traditionally documented 1680 inventory of the same collection.
  • Find out what known artwork, if any, the scholars have identified as being part of the Mellini collection.
  • Compare how the same work was described–usually in much more technical detail–in Mellini’s 1680 inventory of the same collection.
  • Use the convenient filters to find out how many works, if any, Mellini owned from your favorite artist.
  • Jump to the Research Notes for each identified or possibly identified image to see more information and provenance.

Five years and the hard work of numerous people went into this publication, but personally I’d like to thank the team members I worked with myself over the past two years–Susan Edwards, Tom Scutt, Ahree Lee, JP Pan, Murtha Baca and Francesca Albrezzi. Hey guys–we did it!

Everyone else: Go see it!

Dipping my toes back into the Drupal

Apparently we’ll be using more Drupal soon at work, so today I installed Drupal 7 onto my office machine.

Holy crap, that was easy!

I’m sorry, but I remember the very first time I installed Drupal on my home machine, and it took SIX HOURS of troubleshooting the MySql and the PHP, and then yes, the Drupal. It was a dreadful experience, and to be honest, it was a sign of my trials with Drupal start to finish. I’ve hated Drupal for a long time now.

Hopefully this new easy installation is also a sign, and Drupal 7 will be a kinder and gentler CMS than Drupal 6 was. Many, many fingers are crossed!

Kicking Drupal ass today

It’s Drupal day again, and import data problem continues to piss me off (migrate refuses to pass properly export my tables to View, and eventually just stopped importing my table rows at all; and node-import keeps failing at step 7, line 668). So instead of beating that dead horse some more, I moved on to problems I could actually solve, and solve them I did!

First, the breadcrumbs. I needed to a) include breadcrumbs, and b) style them to match the design. I used the Menu Breadcrumb module to solve the first problem, so that the breadcrumb would draw from Primary Links instead of Navigation. For the second, I first turned to Pro Drupal Development by John K. VanDyk–page 181 had the advice I needed, i.e. to add the following function to my theme’s template.php to change the breadcrumb separator from ‘>’ to ‘: :’ :

function phptemplate_breadcrumb($breadcrumb) {
if (!empty($breadcrumb)) {
return ''. implode(' : : ', $breadcrumb) .'';

But that wasn’t enough. I needed to remove “Home” as the first item of the breadcrumb, so I changed the above code to this:

function phptemplate_breadcrumb($breadcrumb) {
if (!empty($breadcrumb)) {
return ''. implode(' : : ', $breadcrumb) .'';

And that fixed that problem! The rest was just updating the css in the breadcrumb call in my page.tpl.php file:

For some reason, my css wasn’t working on the “: :”, so I fonted them, but otherwise this worked perfectly! Breadcrumb success!

Except, then the client wanted the breadcrumb changed for one content type. No problem!

(shoot, can’t put the code here without serious edits, due to its extreme php-ness. Damn! But there’s good info on hiding blocks for specific node types here.)

Seriously, I was on fire today!

Next problem, the drop down menus were appearing under the flash slideshows on six pages. I thought it had something to do with Nice Menus, but after much googling, I found the fix to this was actually in the Flash embed code, so I added this code to the swfobject code for each:

so.addParam("wmode", "transparent");

And those are the things I fixed today. Woot!