The heater not working may be the blend door, a common issue on Fords, its electric, but FIRST check the heater by-pass valve in the engine bay
The By-pass has 4 heater hoses connected to it and a vacuum controlled valve
It will have a Grey hard plastic vacuum line connected
Start engine
In the cab select any setting EXCEPT OFF or AC MAX
Now go to engine bay and pull off the Grey line from the by-pass valve, it should NOT have vacuum, put you finger on it, you will feel if there is vacuum present
If so that's why there is no heat, plug that vacuum line and leave it off, you can deal with it later
If there is no vacuum on the grey line then problem is the Blend door
Also feel the heater hoses at the firewall are they warming up, or hot?
That means by-pass valve is open and hot coolant is going thru the heater core in the cab
Google: Ford Ranger Blend Door
Loads of videos on this issue
The blend door's electric motor is controlled by the TEMP knob, the blend door channels air from the fan thru the heater core(HOT) or around the heater core(COLD) or anywhere in between
As for the Vents
There are 2 Vacuum "motors" connected to 2 vent doors that control air direction to Defrost, Panel or Floor
Diagram here:
https://www.explorerforum.com/forums/attachments/hvac-20diag-gif.41768/
Defrost is the NV(no vacuum) setting for both vent doors
Panel is when V(vacuum) is at the one vent door but not at the other vent door
Floor is when there is vacuum at the one vent door but not the other(defrost door)
Defrost mixed with floor would mean no vacuum at defrost door and PV(partial vacuum) and other vent door
Can't tell you why its stuck that way, there is a vacuum manifold on the back of the panel and then another multi-vacuum line connector next to left side of glove box
If you fold glove box down all the way you can often see it, multi-colored vacuum hoses
This is the rear of the climate control panel:
https://i.ebayimg.com/images/g/1YYAAOSwsBhfQB3e/s-l500.jpg
On the lower left you can see the multi-colored vacuum hoses, white, yellow, brown, blue, red
Maybe you have a leak there or at the connector by glove box
Did the mechanic check vacuum level?
You need a vacuum gauge to test if you are getting above 12" full time, usually it holds between 15-20"