Smartphones are not inherently less accurate than a "real" GPS. My smartphone, in good conditions, is just as accurate -- maybe even MORE accurate -- than my Garmin GPSMAP 60csx. I've found the majority of my last 1000 cache finds with my iPhone 4.
The issue is that phones have less sensitive antennas (they are smaller) so they can lose signal faster in forested areas. And, phones use a variety of OTHER techniques to figure out where they are, including triangulation of cell towers, and looking up databases of known locations of local WiFi hotspots. And, because they are trying to be friendly, the phone will not tell you what method it is using to calculate your location. It will just quietly update your position in the background. For most, non-geocaching purposes, it doesn't really matter -- the Starbucks app still works...
What this means is that when you are geocaching, depending on where you are, you could be looking at an error radius of anywhere from +/- 5 meters (good) up to +/- 2 KILOMETERS (BAD!). Often it will bounce between 15 to 50 meters. Not close enough for marking coordinates to place a cache!
If you hide a cache with a smartphone, pay attention to the error radius reported by the GPS app. Anything more than +/- 7-8 meters is NOT GOOD. If you're 8 meters off, and the next finder is also 8 meters off, that could be 16 meters of inaccuracy -- definitely enough to annoy people!
Also, average your coordinates. Stand there for a few minutes and watch the numbers jump around. Take a running average of the numbers you see (ignoring any with too high of an error radius). Bring a friend with another GPS unit (even another phone) and average the coordinates you both get.
Another trick: once you've taken your coordinates, come back again another day (with different weather conditions), set them into your phone/GPS as if you were hunting for your own cache, and see where they take you. If they are off, try taking coordinates again.
And finally: a good hide, unless it is trying to be tricky, should be reasonably obvious to a geocacher. I won't care if my coordinates are a bit off, if I arrive at the destination and see the nice big stump or lamp skirt where the geocache obviously is hidden.
I think these problem hides are because people new to the game get excited, put down their cache, whip out their smartphone, take a screenshot of the first numbers that appear, and run along -- not realizing that the GPS hasn't settled in yet and their coordinates are still way off. When you take your phone out of sleep, there is a window of a few seconds where it thinks it knows where you are -- but it is wrong. You have to leave it on and let it settle.
Best plan is to use a "real" dedicated GPS unit, but even if you can't do that, there are ways to improve the results you get from a phone placement.