If you get 30 days annual leave entitlement per year, then you earn 2.5 days for every month worked.
Say you start working for the employer on 1st January and you wish to take 10 days holiday from 1st April, then you will have only earned 7.5 days, clearly not enough to be taking the 10 days you want to but employers will honour those days provided you haven't given them reason to think you will not be with them long enough to earn those 2.5 days back from them.
Am I making sense so far?
If you wanted to to take more holidays than what your contract stipulates you are allowed, then you will be expected to take the surplus days unpaid, regardless whether you are taying with them another year or not.
Extending the contract by 30 days would not work as you'll have only earned 2.5 of those extra days taken. You'd have to extend the contract by a year and not take any holidays during that year.