To start from the beginning, concerning plants...they are not demanding when it comes to the substrate, and most will grow well in any substrate. The prime issue is grain size. These plants grow in mud, sand, or a combination, in their habitats. There is no reason to think they will not grow well--and usually very well--in sand. Compacting is not even an issue here, assuming the plants are healthy. Oxygen is a waste product of plant photosynthesis, and plants release it primarily through the roots. The substrate can be kept sufficiently oxygenated depending upon the plants (number and species), depth of the substrate, and other related factors. But the bottom line is, sand is without question the best aquarium substrate when it comes to plants. Gravel is OK, for many but not all plants, provided it is not larger grain size than pea gravel. The problem for substrate fish with anything larger than sand is primarily a bacterial one, and this affects corydoras catfish, loaches, and some other fish.
That brings us to nutrition. There are two primary types of planted aquarium, high tech (involving diffused CO2, higher light intensity, and regular often daily fertilizing). On the opposite end of the scale are low-tech or natural planted tanks, which cater to the fish, not the plants, by having less intense light (this impacts fish), no added CO2, and minimal (if any) fertilizers. If fish are the prime focus, then the "planted" tank should be such that the fish are not detrimentally affected. The high-tech planted tank places plants first, as in an aquatic garden, but unfortunately this usually causes problems for fish.
The substrate may depend upon the intent--fish tank with plants, or aquatic garden. For the latter, there are enriched substrates which may or often may not have much benefit for plants, but they sell well. They are detrimental, sometimes terribly so, to substrate fish. In a natural method planted tank, you will not gain benefits from "plant" substrates. But you may have serious issues for fish, like corydoras, loaches, cichlids that spend a lot of time over and eat from the substrate. Inert sand or gravel is all you should ever use with substrate fish, and when it comes to corydoras, they must have sand. As must some loaches. It is easy enough to use substrate tabs for plants needing this, like the larger swords, aponogeton, some crypts, and the lotus lily plants. I had all of these thrive with Flourish Tabs in fine gravel or sand, depending.
I was persuaded some years ago to buy Flourite as an "enriched" substrate. Within a week I had to remove the cories who developed terrible bleeding from the roughness, and after that the tank ran for two years (no substrate fish) but the plants were no better; I still had to use liquid and substrate fertilizers, so what is the point? The Flourite was dumped in a hole in the back garden, complete waste of money. I've used Quikrete Play Sand ever since and never had plant or fish problems that could in any way be due to the sand.