In this day and age of Google and friends there are certain things you expect when software says it includes search functionality. At the most basic level you expect that if you type in ‘elephant’ it will find all instances of the word ‘elephant’. The next step is that typing ‘free’ would return all instances of ‘free’, ‘freedom’, ‘freely’, ‘freed’, orĀ any other variation of the word. The final, most complex step is that search itself becomes a query language allowing infinitely complex searches to be performed.
Yesterday I discovered that the search functionality included with Drupal is capable of whole word searching only.
I really hate discovering huge failings like this myself and wish they’d be clear from the beginning on such limitations. As a result of this revelation I’ve been reading through discussions on drupal.org about how the search can be improved that have been going on for a disappointingly long time, which unfortunately is quite common with Drupal (a curse of being open source), mainly because certain decision-makers in the Drupal heirarchy feel that full-text search would incur too great a performance hit. This, rather than making it possible for people to find content on your site without explicity knowing what it is called.
This even affects site administrators because when sites get large enough that admins have to search to find a certain node (article/post in Drupal-talk) they must know exatly what they’re looking for to be able to find it.
Luckily there are modules available to replace the built-in search module, but now I am required to manually search through them to find the right solution.