An In-Depth Look at WordPress Hooks: What, Why and How