San Marcos is great to stay few weeks also, if you are more chilled you better stay here. You have great opportunities of workshops and courses of yoga, meditation, massage, etc. etc. here.
To go shopping you have to main markets: The Solala Market (more a local market but the way there is beautiful) and Chi Chi Market where you can find amazing handmade products for low prices (but bargain anyway).
Best Time To Visit
Best time to visit San Marcos is February and from April to September