Ok, so I was going to avoid this topic, because it kinda gets on my nerves. But given that the holiday season is upon us, and a number of people have asked me whether it's "safe" to visit Mexico, I will weigh in.
First off: Mexico is a big country. So be specific in your research before planning a trip, and don't heed news reports of "Mexico is falling apart." I'd estimate that for a tourist, 99 percent of it is safe (just a blind guess)
Second: Where is it not safe? Ok, I would advise against visiting Ciudad Juarez, Matamoros, Reynosa, Tijuana and Culiacan, unless you know the cities and/or know people who live there. Along the border, the safety situation is fluid and ever-changing in every small town too, so check in with local authorities (and the authorities on the US side; maybe a local consulate if that makes you more comfortable).
Resorts? All pretty safe. There is no war being waged against tourists in Mazatlan, Puerto Vallarta, Cancun, or Acapulco. These places suck as far as holiday locales go, and there is every chance you'll get mugged or ripped off somehow, just as you might get mugged walking down the streets of Boston. But the chances of being caught up in drug violence are slim to none. There was a shootout on the main drag in Acapulco earlier this year; life goes on as (close to) normal in the city today.
Inland pueblos: Safe as can be... Be cautious if driving long stretches on open roads (I'd advise taking the bus, personally, but if you must drive, don't drive at night, watch out for crazy drivers and be sure to stop at military checkpoints and not use your cellphone near them.) Steer clear of SUVs and any vehicle with tinted windows/no license plate, and do not, under any circumstance, get into an argument with another driver no matter how much he or she might piss you off.
In the towns themselves, adopt a policy of silent respect. Ie: don't ask about narcos or drugs, and people won't bother you, by and large. If you're a nosy journalist like me, ask about drugs, but do so at your own risk. And know that you probably won't find out much more than you would read in the papers.
If there is a party going on outside or near your hotel and it's driving you crazy, put in some earplugs and just deal with it. It might be a bunch of fun-loving locals having a family affair; it might be the local narco. Let them be.
Mexico City: Take taxis from sitios, or stands, or have your hotel call a car for you. Street cabs are fine for those who have some street sense, but it's probably not worth the risk (and it's not all that much more expensive to just call a cab).
Absolutely forbidden: Don't buy drugs. I don't say this from a moral standpoint, I couldn't care less if you do smoke weed or do coke. But in Mexico, buying drugs right now could a) conect you to the very people you should be trying to avoid or b) get you in a lot of hot water with the authorities. So best to just stay well away from all that.
Lastly: If you have a problem with some sort of crime, many cities now have tourist hotlines and/or consulates. Go to them, and skip the local cops.