The price advertised at a hotel is called the "Rack Rate". Never pay that. Phone the hotel and get a real price from them. It's a weird system, but you'll get the same price as an OTA is offering. Often less, if you ask and quote the OTA price.
I guess I could do that, but I generally prefer to book on the internet. Phones tend to result in dealing with international phone calls, being on hold, reading credit-card numbers over the phone, and that kind of hassle. Plus, the discovery/comparison-shopping experience is considerably worse. Some hotels offer the same discounted rates through their own websites, and I do book with them directly if they do. If they don't, but somewhere else on the internet does offer the discounted rates, then I prefer that option to calling.