Since the demise of the local unprofitable local line between Beja and Funcheira, a couple of years ago, the only way by rail to get from Evora to Lagos is via Pinhal Novo. Basically, one takes the Lisbon train back up to Pinhal Novo and then connects with the Lisbon to Algarve trains.
The www.cp.pt site shows three departures as follows:
Evora 07h02 Lagos 12h06
Evora 09h02 Lagos 14h22
Evora 16h55 Lagos 21h15
One changes trains at Pinhal Novo and Tunes.
There is no direct bus service between Evora and Lagos. One would have to route via Faro and then catch a connecting bus or train to Lagos and then a further bus to Salema.
For Evora to Faro bus services see: www.rede-expressos.pt
For Lagos to Salema bus services see: www.eva-bus.com
Photo by Jimmy Kreislauf (Obra do próprio)