Best way to move back and forth between horizontal planes using doors?

Prototype
I’m prototyping for a sidescroller game I want to make, and I want to create a door script that can properly move the player to the X (or Z, as I will also have planes in the Z axis) center of the door and then between the two different planes without using set transforms, so I can prefab the door and use the same script and prefab throughout the game, making adjustments to the appearance at most if needed. I thought about creating two anchor points using empty game objects as children of the door, but I decided I would first ask here in case there is a better solution.

Editor view
Hierarchy
I decided to just go with anchors, here is the code.
The sphere colliders represent the anchor, the box colliders represent TriggerFront and TriggerBack, with TriggerFront being on the right side. The code is written so that the Trigger game objects must be a child of an object, so that it can be prefabbed and used anywhere.

public class DoorHandling : MonoBehaviour {

	void OnTriggerStay(Collider c) {
		if (input.useDown) {
			GameObject door = transform.parent.gameObject;
			if (gameObject.name == "TriggerFront") {
				Transform anchor = door.transform.Find("TriggerBack/Anchor");
				c.transform.position = anchor.position;
			}
			else if (gameObject.name == "TriggerBack") {
				Transform anchor = door.transform.Find("TriggerFront/Anchor");
				c.transform.position = anchor.position;
			}
		}
	}
}