This isn't a bad idea, actually. I worked in a grocery store in high school and I do remember there being some limitations to what can be bought with food stamps, but honestly I lived in a pretty high income area and it was pretty rare that I saw them. Certainly not often enough to remember much about the program.
This is not a good idea. Once you do that then you create a huge problem where the government has to verify, by product, what counts as acceptable for each kind of voucher. It would be a bureaucratic nightmare.
The better answer for the program overall actually is just to give people cash. When conservatives freak out over people on food stamps buying expensive food, one of the reasons is that some people are thriftier overall than others. Food stamps can't (easily) be transferred into cash, so it's a 'use it or lose it' type thing, even if the person is poor in other ways.
Cash is fungible. If we're willing to give someone $300 a month for food, we should just give them $300 a month.
