Theming Strategies In Context
Overriding a template should only be done when you need major, site-wide structural changes to a page's, node's, or block's template file such as adding or removing regions because the changes will apply to ALL use-cases of those files. Smaller, less structural - but still site wide - changes can be applied through theme functions and lastly, fine-tuned and case specific changes can be applied through theme hook suggestions. But that's just the tip of the iceberg for all the theming strategies available to you.
Read more