CanPlaceOn does not work with wooden doors
I tryed using the command /give @p wooden_door 1 0
{CanPlaceOn:[cobblestone]}and it did say "Can be placed on: Cobblestone" but it did not work it won't let me place the door, I think it might work with all 2-blocks-tall-blocks but that has not been confirmed yet.