My Land Rover Discovery only produces heat when the car is moving but when stationary it will not produce heat.
The heater core is most likely blocked and in need of flushing. If it can't be cleaned by flushing it will have to be replaced. Under load the water pump provides more pressure for coolant to flow through the heater core, at idle it doesn't and you have a corresponding loss in interior heat. Try to remove the heater hoses from the engine and flushing water through them.
Search Land Rover Discovery Questions
Land Rover Discovery Experts