I try to have a devoted "grocery shopping day"- Thursday. I have found that the less often I go to the grocery store over the course of the week, the less food I end up buying and inevitably wasting.
Another reason I like to go on a specific day is that it causes me to be a little creative about making it to the next grocery shopping day. For example, by Tuesday or Wednesday I might be out of half and half or bread. Instead of running to the store to pick up those couple of things, I try to get creative and use up what else I have in the house. This is also great because it makes me use up little bits of leftovers in creative ways, instead of letting them go bad and throwing them out.
One last thing that I find works well is to buy twice the amount of meat I typically use, and freeze half. I always have some frozen veggies (which are actually really healthy, because they are flash frozen at their prime freshness and therefore retain a lot of their vitamins) and boxes of rice and couscous in the pantry. Then, no matter how bare the fridge is, there is always something for dinner!