You know what you run out of - bread, milk, fruit, snacks, lunches.Therefore add those to the list, and meal plan for lunches, and add those things to your list.
In the short term, every time you run out of something that you have to run to the Co-op for, write it on a list. Then you'll see a pattern of what you need to add to the main shop. Add to the list things that you notice have nearly run out, not things as they've run out.
If the milk you're buying isn't enough for the week, do you have a milkman locally? Or just buy extra milk at the supermarket and freeze it. Ditto bread.
I have found shopping online is sometimes easier because I can look at what I've bought on a screen and then thing, that's an awful lot of x, that's not much y, and edit accordingly.
In terms of snacks - I would buy what you think is reasonable for a week and when they've run out, too bad. I'm assuming that snacks are things like crisps and biscuits, rather than fruit/veg though.
You can keep bread in the fridge so it lasts longer, but it can go a tiny bit stale (ditto the freezer) but tbh not enough that I've ever noticed.
Wraps tend to last longer than bread ime, and pitta bread lives in the freezer because I only ever eat it toasted and dipped into something. Tinned stuff is for later in the week.
Shopping lists belong on the fridge door btw. Fact. 