Now, Shanks is a fairly young man. I think oda said he was 28 when he was in Luffy's village. Roughly around the same time, I seem to recall a certain "Red-Leg" Zeff returning from the Grand Line.
Here's a thought. Considering that we've discovered that the Yonkou are based on the four aspects of the Cosmic Myth (White Tiger, Red Phoenix, Blue-Green Dragon, Black Turtle), is it possible to assume that Zeff was the former Red Phoenix?
Let's look at the evidence. Zeff sailed the Red-line for a year or more. He had a fair amount of knowledge on things such as All Blue, Shichibukai, Apparently Gyojin Island (How else would Sanji know about it?), among other things. He was a powerful man who could leave footprints in solid steel (Can Sanji do that yet?). Plus, he was well known and feared throughout the seas.
Just as the current Red Phoenix gave an arm to save Luffy, the former Red Phoenix could have given his leg to save Sanji. It's perfectly possible.