We have a Ring doorbell that hooks into the actual chime that the old doorbell used, so it still preserves the old doorbell's functionality[1]. I can understand not wanting to buy into the Ring ecosystem (we started using them before they were bought by Amazon), but maybe there are cheaper doorbells that also do that? All we had to do to make the old chime work with the Ring doorbell was install an extra widget that came with the Ring doorbell inside the chime; the Ring doorbell's instructions explained how to do it. It just needed a screwdriver and a few minutes' work.

[1] More precisely, we did until we moved to a manufactured home that did not even have a doorbell installed, after which I had to do some jiggering (now we have a Ring chime that the doorbell can talk to over the house's LAN). But the setup I describe above worked fine for a number of years in the house we were in before.

Oh our London flat has no pre-installed doorbell at all! This is surprisingly common and everyone just knocks.

But yes, there were definitely other ways to solve this problem.