
We recently had the privilege to work with the Los Angeles County Museum of Art (LACMA) to launch their first online scholarly catalogue. Featuring objects from Southeast Asian art, the catalogue makes information about works in LACMA’s collection available in a new, media-rich format. The catalog is built on the excellent OSCI Toolkit, an open-source online publishing tool developed by the Indianapolis Museum of Art. We worked with LACMA to develop new features and tailor the appearance of the toolkit to their needs. The OSCI Toolkit was developed with front-end/back-end separation in mind,…
Apache Solr is a great alternative to Drupal’s built-in search engine. With the help of the Apache Solr contributed module, it is not even too difficult to get it up and running on any Drupal site. Even though Solr is a very sophisticated search platform with many features, there is one kind of functionality that it does not provide out of the box: paragraph level search results. Imagine that there is an article with very extensive content that could spread across multiple pages if it was printed in a book (like this blog post). Let’s suppose a site visitor searches for a keyword that is…
We often set up staging sites for clients, and deploy all enhancements to that staging site first so that the client has an opportunity to test and validate new features before they go live. These staging sites occasionally contain production data to make testing easier and more realistic, which also means that even real user e-mail addresses can make their way to it. This potentially implies the risk of sending out unwanted e-mails to those addresses. E-mail sending is one feature that developers need to be mindful of when testing Drupal sites. In certain settings, e-mails can be sent out…
When setting up content types on a more involved site, a developer could easily end up with having an enormous list of fields in one single content type. When this happens, I tend to pause for a second, and think through whether there is any way to consolidate that list. Chances are, I find a field or two whose values either depend on other fields or can be generated without user input. These are the exact scenarios where the Computed Field module can be a great choice. Computed Fields lets you define an algorithm to calculate the value of a certain field, freeing the end user from having to…
Debugging is an integral part of any development process, and the time it requires tends to add up to a significant part of the total development time. Therefore, it is wise to consider various debugging tools and select the one that fits your working habits and conditions best to save time.