League One Wrap: Wolves go second, Orient lose
Nathan Doyle's 28th-minute sending off for two yellow cards did not help Bradford's cause on Saturday and Kevin McDonald punished the visitors as he broke the deadlock for Wolves on the stroke of half-time.
Nouha Dicko netted 13 minutes into the second period to secure the three points, leaving Bradford in mid table and lifting Wolves above Leyton Orient and into an automatic promotion spot.
Orient slipped to third thanks to their 2-1 loss at play-off hopefuls Rotherham United.
Moses Odubajo cancelled out Wesley Thomas' 10th-minute opener with 14 minutes left to play, but Alex Revell netted a 95th-minute winner as Rotherham made it five games unbeaten in the league.
Brentford remain top by two points, despite being held to a 1-1 draw at struggling Shrewsbury Town.
On-loan Fulham striker Marcello Trotta looked to have steered Brentford towards a third successive league win with his goal in the 68th minute, but Shrewsbury fought back and equalised in the dying moments through Tom Eaves.
Shrewsbury remain in the bottom four by virtue of Bristol City beating Carlisle United 2-1 at Ashton Gate.
A 2-0 home triumph over Notts County saw Preston North End gain three points on third-placed Orient, while Swindon Town lost ground in the push for the play-offs after losing 1-0 at home to Oldham Athletic.
Tranmere Rovers gave themselves a four-point cushion from the relegation zone as Ryan Lowe netted against his former club in the 90th minute to earn a 1-0 triumph at MK Dons, who have now lost three in a row in League One.
Gillingham defeated Port Vale 3-2 and Crewe Alexandra moved three points clear of the drop zone by cruising to a 3-0 victory over Sheffield United, who in turn drop to second bottom.
Crawley Town's home match with Stevenage, Walsall's trip to Coventry City and Peterborough's East Anglian derby with Colchester United were all postponed due to waterlogged pitches.