The Welshman has extended his previous deal by a year, having joined the Baggies in 2016.
Whilst not a regular starter this season, the striker has made an impact from the bench on several occasions, and did come into the fold to make the starting XI in the 1-0 defeat to Leeds earlier on this month.
Upon signing his new deal, the 30-year-old expressed his delight to extend his stay at The Hawthorns further.
"It’s fantastic for me and it remains a real pleasure to represent this club," he said.
"Slaven [Bilic] is building a strong squad here which can compete and I’m looking forward to contributing over the course of the season.
"We’re going to need the whole squad for the battle ahead and need strength in every position, whether that is being in the team as a first choice or coming into games to make an impact.
"There’s a real focus around the place now which Slaven has helped create but we need to maintain what we’re doing."
West Brom currently sit top of the Championship table after 11 games.
Another star performer this season has been full-back Nathan Ferguson, who remains in talks over a contract extension of his own.
The 19-year-old is expected to sign a new five-year-deal at The Hawthorns – with reports emerging that an announcement could be made in the next fortnight.