Depends if hitting the starter with a hammer fixes the problem. No use buying another starter motor if there's nothing wrong with it and the fault is something else.

If the starter turns out to be faulty it could be just the brushes that need replacing or freeing up so they don't stick. The brushes are 2 blocks of solid copper powder that brush against the armature and carry the 12v current to the armature to make it rotate.

The fault could also be the solenoid that moves the starter gear against the flywheel so that it engages with the flywheel to turn the motor over. If that solenoid is sticking when hot it might just need a drop of oil.

Don't worry, bit by bit we'll track down the cause of the problem and help you fix it.

Cheers

Paul