Wasn't the appearance by Salem a sweeps stunt? For some reason I can recall they all went back in time in different time periods, and Salem appeared in each episode for that reason.
It was a stunt, probably for sweeps, that connected all four TGIF shows for one night. In the Sabrina episode, she made a "time ball" which changes the world to whatever time period someone thinks about while holding it. Salem ate the ball, and then ran away, leaving the Sabrina cast stuck in the '60s.Every show, it seems, has a time-related episode and this connection with Salem just adds to that.
Salem then appeared on the other remaining shows that night, transporting each episode to a different time period. Teen Angel was the '70s, You Wish was the '60s, and Boy Meets World was the '40s. Now that I think about it, I believe that Sabrina herself appeared on at least one of those shows that night, if not all three.