Hey I have this this speaker and this one as well and I am trying to play a wav file using them, and it does work but it is very quiet. I tried increasing the gain but that didn't help at all, and made the quality much much worse. I've heard of using a transistor to amplify sound, but I can't really understand the circuit diagrams to do it. If someone could help I'd appreciate it.
You can damage the Arduino by directly connecting an 8-Ohm speaker. The minimum resistance/impedance is 125 Ohms (for 40mA@ 5V), and an audio shield usually expects a higher-impedance load too (depending on the particular shield).
You can build an amplifier with a power amplifier chip such as the [u]LM386[/u], or there are lots of other chips to choose from (if you want more power, etc.).
I wouldn't recommend building an amplifier from transistor(s), and that single transistor schematic posted is a poor-inefficient design.