Hi Folks,

I am working on a project where we want to implement a module providing custom user access-control based on a node's taxonomy terms. We would like to implement the logic within hook_init() so that 1) the logic can check the taxonomy terms on every request and 2) we don't miss out on Drupal's built-in cache'ing features. Because Drupal's bootstrap process loads the framework incrementally, functions that we would normally use to access the taxonomy terms for a given node are not available at the time hook_init() is called. The solution we are considering is a direct query to the DB to build the list of the node's taxonomy terms. Does anyone have any insight on whether this tack would incur a significant performance hit, relative to the cached page being served without the taxonomy lookup? Also, any thoughts on some other scheme I might be overlooking would be welcome.

Thanks!