Apologies, just read your post a bit more carefully and realised that you want to do this via plugin hooks and without hacking the code.
I'll leave my above post up for reference but someone else will have to chime in to answer your specific request.