I think the biggest game-changer for me is writing down my plan for the next day in the evening.
Also, using extensions like TomatoTimer to make sure I don't get distracted by impulsive browsing. It's amazing how frequently I'll go through a cycle of browsing to HN, getting blocked, browsing to Reddit, getting blocked, and so on before realising what I'm doing on autopilot. That happens a lot when I've got something boring to do, not so much when I'm coding.
Otherwise, I think others have covered it well, regarding eating, moving and sleeping.