So, let's say we are talking about a photon. We can find E by the equation E=pc, which only works for light. But, when I take p=h/λ, then I fill in λ with v_p/f since λ=v_p/f, so then we get p=hf/v_p, then since E=hf we get p=E/v_p, then to p(v_p)=E, and E=pc for light so we get E=pc=p(v_p), which implies c=v_p, which in a vacuum is true for light but quite frequently isn't. I am confused! What am I doing wrong!

v_p is phase velocity