Although the Battle Pet Trainer will only offer to teach you your race-specific companion, it is possible to add all of these pets to your collection. You can either find them in your faction’s auction house or you can create a character of the race whose pet you would like to learn. Using your new character, you can seek out any battle pet trainer in major cities. After you learn the pet, you can delete the character; the pet you learned will not be removed from your collection.
With the Classic beta now out it seems every related article somehow manages to spark the eternal war of "Vanilla was the best WoW sucks now" and "lol nostalgia goggles, Vanilla sucked, enjoy your two weeks of Classic". I have to say, even though I understand the principles behind the battle and the reasons people behave and talk this way... I actually REALLY don't get it on a deeper level.
This is something that people really need to start to understand, not just for Classic or WoW but software developement in general. Fixing a bug isn't just flipping a switch or changing a single digit. You have a machine with literally hundreds of thousands of parts, designed by dozens of different people at different times over the course of 20 and more years. You change a single thing and it might break 50 other things in very subtle ways that might not even emerge until months later (i.e. the very high M+ keys some players got at the start of BfA).