First of all, I'm afraid they ripped you off at Jaycar, (you can get a similar board/module with the exact same chipset for $3), so they should at least be able to give you some support for that astronomical price. The amount of documentation they have on their site is just a shame (especially at that price point).
The ESP8266 comes preloaded with an AT-firmware. You can send AT commands to it over the serial connection (UART). For example, if you send AT+CWJAP="My-WiFi-Network","password123"
, it will try to connect to a WiFi access point called "My-WiFi-Network" using the password "password123". (JAP = Join Access Point)
The ESP will then respond with "OK" on success, or return an error code if it fails.
Handling this communication all by yourself in your Arduino code by using Serial.print and Serial.read (e.g. Serial.println("AT+CWJAP=\"My-WiFi-Network\",\"password123\"");
) is a real pain.
There should be some high-level libraries out there that handle the low-level communication for you, but I still have to find one that does everything I want and that is well documented.
As mentioned before, communication is done over a Serial UART connection. The Arduino UNO has only one hardware UART, that is used for debugging and programming the Arduino as well. That's why this shield has two DIP switches that connect and disconnect the ESP from the Arduino's UART pins. When uploading code to the Arduino, you have to disconnect it, when running the code using WiFi, you have to connect it. When it's connected, you can't use Serial.print for debugging, and in the Arduino Serial monitor you can only read the commands the Arduino sends to the ESP, not the responses/results of the ESP.
As you can see, it is a complete nightmare to debug.
An alternative would be to use SoftwareSerial (a UART on normal I/O pins emulated in software on the Arduino) to communicate with the ESP. This means that you can use the Hardware UART (the one connected to the USB connection) for debugging.
However, your board doesn't seam to support it. (You could use some jumper wires to connect the TX and RX of the ESP to some different pins of the Arduino, but you'll probably need a level shifter on RX.)
You could program the ESP directly as well, which is much easier (you can just program it like a normal Arduino).
Actually, the ESP8266's processor is 5 to 10 times faster than the one found on an Arduino UNO or MEGA, it has 40 times more RAM than an UNO, has up to 4MB of flash memory, and so on.
If you just want to send the temperature to a server, I would (personally) forget about the UNO and the shield, and get an ESP8266 development board. It has a USB interface that allows for Plug 'N' Play programming, just like an Arduino UNO, using the Arduino IDE. It has 11 I/O pins that you can use for reading your temperature sensor, and the WiFi code is much, much simpler and more readable than using AT commands.
You can get a WeMos D1 Mini clone for about $3.50.
Here's an example of a fully functional temperature logger with web interface, using only an ESP8266 and a temperature sensor:
https://tttapa.github.io/ESP8266/Chap16%20-%20Data%20Logging.html
And here's example code for sending sensor data to a server (complete with server-side PHP code as well):
Pieter