In some cases, for example page where a lot of block are loading the same current node in one request it could be useful to load node just once for every block. Once I read somewhere this is default functionality for node_load() function.

Is it really true, or do I have to workaround that by myslef (store node as global variable or something like that)? Documentation says nothing about that.

1 Answer 1


Yes, node data is statically cached per request, if the requests are for un-revisioned nodes. No, you don't need to do the caching yourself.

The cache read/write happens in NodeController::load() if you're interested in what's going on behind the scenes.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.