Some other factoids from Greek:
* Languages with inflectional morphology will tend to inflect town names, especially town names they care about, as Daniel Lindsäth correctly points out. Ancient Greek tended to do that a lot, though not universally, as you can see in the Geography (Ptolemy): most towns end up looking declinable, though some are left as they are.
* Town names can look different because they get into the language via a second language, which has more prestige or enables more foreign contact. Josh Lim points out the switch from Spanish to English as the donor language in the Philippines. In Early Modern Greek, the gateway to the West was Italian; so London used to be Londra.
* If the pedants start running your language, as happened in Greek (Katharevousa), then the donor language becomes an antiquarian transformation of names, to match the ideology of “we should be speaking Ancient Greek, so were going to make our foreign town names look like they would have in Ancient Greek”. So London stopped being Italian Londra, and started being Londinon, from Latin Londinium. Syracuse stopped being Saraguza (Sicilian Sarausa), and went back to being Syrakousai (reviving the Ancient form).
* If the pedants stop running your language, forms stop being translated. But the countervailing pressure of respecting the source language pronunciation, which is so prominent in English, is not universally felt: I just don’t see any possibility of Pekino (Peking) being displaced by Beidzing.
* If the pedantic form is easy enough to pronounce, the peasants will take it up: Greeks in Melbourne never call it anything but Melvurni. But if the pedantic form is harder to pronounce because it is too pedantics, the peasants may not. The pedants’ form for Adelaide is /aðela.ˈiða/. The breaking up of a-i into two syllables is not how the Greek vernacular works; and you’re far likelier to hear Greeks in Australia call it /ˈadelajd/.
* And of course there’s historical baggage as well. No Greek in Greece ever, ever refers to Istanbul as anything but Constantinople. Ever ever. The only time Ίσταμπουλ ever gets used is by Greeks living in Turkey. Such as, say, the Ecumenical Patriarch. Who notoriously got told off for calling Constantinople the wrong name.