I cannot decide if I should put 2 commas because when I remove the "non-restrictive" clause, it doesn't make sense, "He is the new baseball captain for the annual magazine.
(a) He is the new baseball captain whom you must take a photograph of for the annual magazine.
(b) He is the new baseball captain, whom you must take a photograph of, for the annual magazine.
I think I should write (a), without the commas.
The relative clause is worth setting off with a comma if there is only one new baseball captain, because that would mean that the relative clause is nonrestrictive, and nonrestrictive relative clauses are conventionally rendered nonrestrictive in writing by being set off by a comma.
If you do set the relative clause off with a comma, you will have to begin the clause either with
who or with
whom. Zero relative clauses don't work in nonrestrictive relative clauses:
*[strike]
He is the new baseball captain, you must take a picture of for the annual magazine[/strike].
And
that-relatives aren't an option in nonrestrictive relative clauses in modern English. Nor are
which-relatives when the antecedent of the relative pronoun is human. So your hand will be forced to choose between
who and
whom. Since the syntax calls for accusative case, why not be daring and use
whom?
(c) He is the new baseball captain, whom you must take a photograph of for the annual magazine.
(d) He is the new baseball captain, of whom you must take a photograph for the annual magazine.
(e) He is the new baseball captain, whom you must photograph for the annual magazine.
Notice that in none of those examples is there a comma before the
for-phrase, which would be incorrect, just as it is in (b).