Just found out the issue.
The previous programmer does a the_post() at the very top of the header file which in effect gets the first post outside the loop.
Not really too sure why he did it this way but it’s good that the issue was found.
Seems like I’ve fixed it now.
ALWAYS REMEMBER TO UPDATE YOUR PERMALINKS.
“Settings -> Permalinks”
Hope this helps someone else.