but if i want to send for example temperature which I have previously recorded, how looks the code therefor.
You have this code:
Serial.print("Hola caracola..."); // the SMS body
Replace that literal string with a variable:
char *buffer = "Hey, there";
to print data that is in a variable.
Now, you can create an array, instead:
sprintf(buffer, "Temp is %d degrees C", tempC);
where it is assumed that tempC is an int variable containing the temperature.
The sprintf function for the Arduino does not support the %f format specifier, so formatted printing of floats is a bit more of a challenge.
However, the Serial instance derives from the Print class, whose print method is overloaded to print floats, so, if tempC is a float (or double), you could do this:
Serial.print("Temp is ");
Serial.print(" degrees C");