My kids, knock on wood, still nap after lunch. Or rather, they have an enforced quiet time that usually results in a nap for at least one of them, sometimes both of them. But it's not a sure-fire sleepy time for either kid, and whether or not they sleep there's no guarantee that they'll come out of quiet time in a good mood. It's the worst when they don't sleep, when they spend rest time lying down in their beds resenting the fact that they have to be there.
This Lifehacker tip is aimed at adults who feel a little post-lunch malaise, but I think it works for kids, too. The idea is that you can battle afternoon tiredness by getting up and moving around a little bit when napping isn't an option, and I know that when my kids get a little bit of extra running-around time in the afternoon it seems to refresh them enough that they stay in good moods until bedtime. Sure, they can't exactly go take a field trip around the office to visit people in their cubicles, but we can make a concerted effort to include activities that get us up and running around in the afternoon. Whether it's a trip to the park, a walk around the block, or a good tidy-up project that forces us to run back and forth around the room for a few minutes, getting the blood pumping and the body working makes for much nicer little girls (and parents).
It can also keep your day more interesting, depending on your habits: I tend to want to get everything done in the morning, and then I want to do less physical tasks in the afternoon until it's time to get up and get dinner going. Throwing a little extra physical movement into our afternoons isn't my natural inclination, but it mixes things up a bit and keeps us all on a happier footing.