If your walls are open enough to permit additional wiring, there's also a door switch. Here's one version
https://www.amazon.com/dp/B00004WLKL/?tag=atomicindus08-20
These go on the hinge side of the door. Be aware that most of these are not adjustable. If you've got a big gap between the door and the jamb, it may not press the button in far enough to turn off the light.
Doesn't look like a lot of space in the door switch box, so you'll probably have to run a single cable switch loop. Yeah I know, its technically not code, but you'll never need a neutral for that switch, and WTF you gonna do? Put a single gang jbox inside the closet, input cable to the jbox, output cable from jbox to light, switch loop cable from jbox to door switch, blank it off. Or be fancy and put a regular switch in the jbox to use when the door switch craps out.