If you’re using an ESP8266/NodeMCU board then you have sufficient pins for 4 physical buttons, but if you want these to control things (like relays or LEDs) connected to the same board then there aren’t really sufficient pins available to do this properly.