Snake is actually one of those games that are a bit more complicated than it looks
There are actually many ways to do snake, but if you're doing a grid based one let me give you a hint: the body doesn't actually move at all!
If you imagine every time the snakes head "steps" one box, it drops a body box there.
The length of the snake is just how many "steps" that body box lasts before disappearing.
If your snake eats an item, just increase how long each body stays visible for by one "step".
If your head ever collides with a body piece, game over.
If you're not doing a grid based snake, then go for waypoints. It will be more complicated, but basically you'll be storing all the coordinates your head has visited and your body pieces will go to each one in order.