There are 4 available options:
This is actually a long discussion so here is a bit of a summary based on my opinion with these 4 links for more details (too much to type here)!
NOTE:
If you arrive in the area on the morning of your cruise then the hotel parking options are not applicable.
If you arrive a night or two before your cruise, then you can choose between all four options.
What is best for some may not work for others so ultimately you have to pick what fits your budget and needs!
I think the "best" combination of parking and lodging is to park ship side while staying at a hotel that fits the budget and interests. If you can avoid shuttles without paying more then why not?
For example, if you have young kids who like pools then pick a hotel with a fun pool design. If you want to watch the cruise ships come and go then pick another. Or do you want to overlook the ocean and beach, or just hoping to stay as cheap as possible anywhere within 30 minutes or so from the port?
Some cruisers even stay near Disney or Orlando Airport and drive one hour or so to the Port the next morning. If you have a car, it is not at all important to stay as close to the Port as possible - anywhere within an hour drive will work because the nearby roads are good and rarely congested and you have a lot of time since the terminals rarely opens before 11am.
There are more important factors to consider in my opinion.
Regardless, I think a good idea is to start with the Port Partner hotels near the Port. There are 23 of them and you get the 40% ship side parking discount voucher for ship side parking! Then you pay more the less the same as parking off site, winning!
If you do not fancy any of those then you should make a short-list of 3 hotels or so you like and start to compare their Park, Snooze & Cruise packages. You park at the hotel and use their shuttles.
If you are still not satisfied (maybe you want somewhere cheaper), then find the cheapest hotel for example and pick an off site parking company. There are 3 to choose from as you saw above
Have fun deciding!