Humidity sensor controlling pump for x seconds

Worth mentioning something as simple as:

void setup() {
  Serial.begin(9600);
  // set up the LCD's number of columns and rows: 
  lcd.begin(16,2);
  dht.begin();
  pinMode(10, OUTPUT); //output for pump
}



void loop() {
  //humidity pump control section of code follows

if(dht.readHumidity() > 50) {
  digitalWrite(10, HIGH);
  delay(2000);
  digitalWrite(10, LOW);
  delay(30000);
}

Would be perfect except it completely stops my LCD from displaying correctly for the entire duration of the delay (which set here is 30s, but would ideally be at least 2 minutes long).