The 28-year-old Macedonia international made 12 Barclays Premier League appearances for Albion last term after signing a similar deal in August.
Baggies boss Steve Clarke said: "It was always our intention to get Goran back over the summer.
"He knows what the club's about and we know what he's about. He's a good player and it makes sense to bring him back.
"He understands the Premier League better now as well and we will look for even more from him next season."
Clarke made his first new signing of the summer last week, bringing in former France striker Nicolas Anelka, who had previously been a free agent.