An epiphor is a specific subset of metaphors. An epiphor is a metaphor that uses an existing object and common base of knowledge to explain something obscure or outside of the common knowledge. So, for example, here's an epiphor:
An important concept in object-oriented programming is inheritance. It's kind of like the idea that all squares are rectangles, but not all rectangles are squares. If I tell you "I'm holding a square piece of paper in my hand", you automatically know that it has all the properties of a rectangle as well - I don't have to say "it's a square, and also a rectangle, and also a quadrilateral, and also a shape", etc, etc. By saying "square", all of those things are understood - your mind just inherits all of those things from its understanding of how a square relates to those terms as a subset. So, in programming, if you had a class called Rectangle with the properties of a rectangle set - 4 sides, 4 right angles, and so on - you could create a class called Square that just inherits all the properties of the Rectangle class, and then you only have to add in one new property - that all of its sides are the same length. So inheritance keeps us from having to reinvent the wheel each time.
(Note that the phrase "reinventing the wheel" is itself an epiphor.)
Other examples would include the Alice and Bob cryptography system, the infamous car analogies on SlashDot, and Schroedinger's cat.
The term was invented by Philip Wheelwright for his book Metaphor and Reality
Contrast with diaphor.