Sometimes the simplest is the best.

Our client uses a Zimmer frame. His toilet door had been previously altered to open out rather than in to the toilet, to allow enough space to turn around in the toilet. However this meant he could not reach the opened door to close it.

The solution was a sturdy cord (a motor mower starter cord) tied to the door handle and the other end was hung over an existing wall mounted safety rail. A small wooden ball was added to this end to keep the cord from sagging.

Once inside the toilet and facing the door our client can pull the cord to close the door.
On exit he is able to get close enough to the closed door to open it in the normal way.

The door closer