Toggle state w button while ignoring other code...

I have read through the blink without delay stuff hoping it would help me but I don't know how to incorporate a button in that context,

BWoD is the way to go.

Save the millis() value at the time that the start action (button press) happens. Then, each time through loop(), check whether the required wait period has elapsed by subtracting the start time from the millis() value now. If the period has elapsed then act accordingly. If not, then go round loop() again, perhaps taking other actions and/or reading inputs, but don't block the free running of loop().

Have a look at Using millis() for timing. A beginners guide for some extended examples.