Zúñiga verliet zijn thuisland in 2008 voor AC Siena. Voorafgaand aan zijn vertrek speelde hij bij Atlético Nacional 123 wedstrijden op het hoogste Colombiaanse competitieniveau. Uiteindelijk speelde Zúñiga één seizoen bij Siena, waarin hij in alle competitiewedstrijden in actie kwam. Op 9 juli 2009 tekende hij een contract voor vijf jaar bij SSC Napoli, dat 8,5 miljoen euro voor hem betaalde. Hij maakte zijn eerste doelpunt in de Serie A op 20 februari 2011 tegen Calcio Catania. In augustus 2013 viel hij uit met een knieblessure. Enkele weken later werd hij geopereerd, waardoor hij de rest van het seizoen 2013/14 vrijwel niet meer in actie. Van 2016 tot 2018 kwam Zuñiga nog op huurbasis uit voor Bologna, Watford en zijn oude club Atlético Nacional, waarna hij in de zomer van 2018 een punt achter zijn voetbalcarrière zette.
Zúñiga maakte indruk op het wereldkampioenschap voetbal 2005 dat in Nederland georganiseerd werd. De Italiaanse pers vergeleek hem met de Braziliaanse vleugelverdedigers Cafú en Roberto Carlos.[1] De ploeg van bondscoach Eduardo Lara verloor in de achtste finales van de latere kampioen Argentinië (2–1). Juan Zúñiga debuteerde datzelfde jaar nog in het Colombiaans voetbalelftal. Op 7 september 2012 maakte hij zijn eerste interlanddoelpunt tegen Uruguay. In mei 2014 werd hij door bondscoach José Pékerman opgenomen in de selectie voor het wereldkampioenschap voetbal in Brazilië. Op 4 juli zette hij zijn knie bij een duel in de rug van Neymar. Na onderzoek bleek Neymar een ruggenwervel gebroken te hebben, waardoor het WK 2014 voor hem voorbij was.[2]