Most idioms are a short form of a story.... I recommend that you teach them by teaching the stories that formed the idioms...
For example the idiom "I'm stumped" which means that i can't go any further or I can't figure something out. This idiom comes from fronter America. When the land was cleared of trees for cultivation tree stumps were left in the ground. When the farmers plow hit a tree stump he could go no further. The original idiom was "I'm up against a stump" and was later shortened to "I'm stumped" and later began to be applied to any situation which cause one to have to pause to figure out what to do next.
By teaching the story of the idiom along with the idiom it helps create a mental image that forms a connection to the idiom and gives it grounding and meaning and thus is much easier to remember.
I hope this helps,
Carl