It depends on how tied to the resort you want to be. SLC airport to Zermatt is about 45 minutes or a $50-60 Uber/Lyft ride. The ceremony will also be about 45 minutes from the reception, so having a vehicle would be ideal. Zermatt provides transit to Park City and Deer Valley ski areas from the premises.
Yes. Most resorts offer a discounted rate for tickets bought online ahead of time. If you are going to Deer Valley, the resort limits the amount of tickets sold per day to avoid over crowding on the mountain. Also, just a heads up, Alta and Deer Valley are skiers only.