There is something I have always done with my children from the moment they were old enough to walk and carry something, and now it is so common place that I take the idea for granted. I figured I'd write it as advice for those tired and frustrated parents that
need that little bit of extra help - though it takes a bit of time and patience to teach your children to start with, it's worth it in the end.
When we did the weekly shopping together, I let my children choose one special thing each. It might be something as simple as what type of fruit they wanted, a cut of meat, or what sort of vegetable we would have with a meal that day. At first, my youngest often just loved buying his own nappies and he'd insist on carrying them around the shop with him! They would take their item from the shelf and put it in the trolly (I often had to pick them up so they could reach). When we got to the checkout, they each got to put their selection up at the checkout, they had their own grocery bag to take home, and they had to pay for their own grocery (with the money I gave them at the checkout). It gave shopping a purpose for them and gave them a sense of power and choice. When we got to the car, they had to put their bag in the car, they had to get it out of the car when we got home, and when we got inside, it was their job to put it away.
We built on this by increasing the amount of choice as the kids got older, stronger, and wiser. I introduced the concept of the shopping list by cutting out pictures of items we wanted from catalogues, gluing it to a piece of paper, and giving one item each to my kids to find as we went through the store. After a while we'd sit down and choose our pictures and the kids would cut out and glue their own pictures to their shopping list page. As they started reading, I'd use simple words. Apple. Banana. Milk. And they'd have to find the item. Then we expanded it by adding more words. Eventually they had their own little shopping list of items they each had to buy, money in their own little wallets to pay for it, their own little carry baskets to put their shopping in, their own bags of groceries to take home, and they still had to put it away when we got home. If I had the money available, I would have bought them their own little shopping trolleys to push around!
The one trick I had to learn very fast for this to work, was to make sure that the last thing they had on their list was in the very last aisle we went down, otherwise they'd have all their stuff and just want to get home, while I'm still running around trying to find what was still on my list!
Eventually I started introducing the concept of price as well with my older boy. Now, my 7 year old is capable of choosing most of the groceries himself, and understands that cost is important if you want to have enough money to buy everything - though he is still learning to calculate it all, he can choose the cheaper of a selection of similar items. He can put everything we buy away in the cupboards/fridge/freezer, and he still enjoys 'paying' for the items at the checkout. So on days when I'm totally fagged out and need that extra bit of help, I can rely on him to make sure we buy everything we need, that we get the right things, and that it all gets put away. And nowdays he's usually the one pushing the trolley.
Of course we had bad days when my kids just couldn't be bothered doing anything, and we had had our share of tantrums, and "muuuuuuummeeeeee, IIIIIIII waaaaaaaant....". My youngest boy's behavioural problems made things tough, but even then, he wasn't quite as bad as some of the kids I've seen shopping with parents that are at their wits end and looking totally exhausted and frustrated! And my eldest boy was usually an angel and every other parent's envy.
If you are having trouble keeping your kids under control while shopping, it's likely to be because they are bored. Try shopping at a time they aren't tired, and give them a good reason to be shopping with you rather than wishing they could have just stayed home. Of course, this won't work so well with older kids, get them while they are still young! And don't fall into the trap of rewarding good behaviour at the shops with a chocolate or lolly, or you will be paying for it (literally) for a long time to come!