Buncrana, County Donegal born goalkeeper Willie O’Hagan played junior football for St Columb’s College and Londonderry Guild before joining Irish League club Derry Celtic in 1910. In 1911 he joined Scottish League club St Mirren making 108 appearances for The Buddies through to 1915. He had loan spells in 1915 with Third Lanark and in 1918 with Linfield before resuming his career with St Mirren in 1918 after the conclusion of his service in the First World War, making a further 72 appearances for them through to 1921 to total 191 appearances in League and Cup for St Mirren. O’Hagan was their goalkeeper as they won The Victory Cup in 1919, when they beat Heart of Midlothian 3-0 in the Final at Celtic Park in front of 65,000.
He won his first cap for Ireland in October the same year when he played in a 1-1 draw with England at Windsor Park, Belfast. His second and final cap came in February 1920 when he played in a 2-2 draw with Wales at The Oval in Belfast (Glentoran’s home ground).
He joined Airdrieonians in the summer of 1921 but played only 7 matches before signing for Third Division (South) club Norwich City, making his Football League debut at Exeter City in March 1922. He soon made the gloves his own and by the time he joined Irish League Fordsons in the 1923 close season he had made 57 appearances for The Canaries. He briefly returned to The Football League in the late summer of 1924, playing 3 times for Aberdare Athletic, before returning to Fordsons where he played until his retirement.
He was the nephew of Ireland international Charlie O’Hagan, who played for among others Tottenham Hotspur, Middlesbrough, Aberdeen, Morton and Third Lanark.