Manipulate関数について

↓こうするとプロットされるのに
Manipulate[ Plot[ Sin[x-a], {x,0, 2π} ], {a,0,2π} ]

↓こうすると何もプロットされない理由を教えてください。
foo[x_, a_] := Sin[x-a];
Manipulate[ Plot[ foo[x,a], {x,0, 2π} ], {a,0,2π} ]

Manipulate の内側に全てを書くのは厳しい時があるので、解決策もお願いします。