При запросе HTTP / 1.1 браузер отправляет имя хоста (www.example.com) веб-серверу в заголовках. Затем сервер берет это имя хоста и направляет его в соответствующую конфигурацию для этого хоста.
В результате на одном веб-сервере с одним IP-адресом могут размещаться несколько доменов.
То, как WordPress делает это, скорее всего, намного сложнее, но это должно дать вам представление о том, как это делается.
http://en.wikipedia.org/wiki/Virtual_hosting