Soon after building the Jquery menu module I started thinking of how to integrate it with other modules which provide hierarchical data such as the taxonomy module and the book module. Last Friday the itch finally got to be too much and on a whim I sat down and started writing a module for producing a Jquery menu interface for browsing through taxonomy terms.
As I got started on it I quickly realized that there needed to be some changes made to the Jquery menu module to make it open and reusable, fortunately only a couple of functions needed to be changed. The result which I am going to be releasing sometime in the next week I hope (If the craziness with the in-laws doesn’t absorb too much of my time) will turn create something like an api for external modules to make use of. I don’t really know if it really can be called an api if it is only providing one function to build a jquery menu from, but it is very flexible, and it will allow the creation of hierarchies based on any criteria the module developer chooses. Best of all, because the module will be separating the array processing from the actual menu system you will be able to manipulate the links themselves in ways that Drupal 6 won’t allow you to do if you are dependent upon it.
I am most of the way done with the Advanced Taxonomy Blocks module which will be the first in a series of modules that I intend to write using this system. I will post documentation and tutorials on the subject once it is feature complete and fully tested.