Putting a signed integer into external EEPROM

It's that easy, use the Wire.write()s to your EEPROM instead of the EEPROM.write() you see in the playground article. You can eliminate some code if you do a sequential write:

void writeEEPROM(int deviceaddress, unsigned int eeaddress, uint32_t data ) 
{
  Wire.beginTransmission(deviceaddress);
  Wire.write((int)(eeaddress >> 8));   // MSB
  Wire.write((int)(eeaddress & 0xFF)); // LSB
  Wire.write(data & 0xff);
  Wire.write((data >> 8) & 0xff);
  Wire.write((data >> 16) & 0xff);
  Wire.write((data >> 24) & 0xff);
  Wire.endTransmission();
}

or a bit faster:

void writeEEPROM(int deviceaddress, unsigned int eeaddress, uint32_t data ) 
{
  Wire.beginTransmission(deviceaddress);
  Wire.write((int)(eeaddress >> 8));   // MSB
  Wire.write((int)(eeaddress & 0xFF)); // LSB
  uint i;
  for (i = 0; i < 4; i++) {
    Wire.write(data & 0xff);
    data >>= 8;
  }
  Wire.endTransmission();
}