Fletcher, 24, passed through Manchester United and Liverpool youth ranks before signing a first professional contract at Burnley.
He played just a couple of times for the Clarets first team, but enjoyed short-term loans at Grimbsy, Crewe, and Yeovil while at Turf Moor.
Fletcher signed for York City in the summer of 2013 and in his first-season, finished the club’s top goalscorer, netting 13 goals in 36 starts for the Minstermen. His season was curtailed somewhat by injury last term, though he still managed seven goals.
“I am delighted to be here and play in this great league,” the Liverpudlian said after agreeing to the move north.
“I’ve already met the players and I am just looking forward to getting started. I’m a player who will work hard and I know where the goal is and if I get the service, I hope to score as many as I can.
“I’ve asked for the No 9 jersey as I like the pressure of expectations. I know the previous player wearing that number scored a lot, so my target is to not only match that, but get more.”
Steelmen boss Iain Baraclough said: “I’ve seen a fair bit of Wes and know exactly what he is capable of.
“The club has also had him watched on several occasions and feel he is ready to add something different to our squad. His game will suit the way we want to play and along with David Clarkson, will add more competition.
“This is just the beginning of the recruitment process though. We’ve still got several more faces to come all across the park and we’ll continue to work hard to do that as quickly as possible.”