IMHO, sorcerers should make a choice upon learning the spell, dependent upon his bloodline. The sorcerer would get to choose whether the protection is from the bloodline's associated alignment, or against the associated alignment's opposition. If there is more than one associated alignment component, he may choose which type of alignment component when he casts the spell.
For example, if a sorcerer has the Abyssal bloodline, then upon learning the spell he should choose whether he's protecting chaotic and/or evil creatures or protecting against them. If he chooses against, then he learns both Protection from Evil and Protection from Chaos. If he chooses to protect CE creatures, then he would learn both Protection from Good and Protection from Law. Alternatively, his alignment at the time of learning the spell could determine the protection, with TN, LE and CG still allowing him to make choice when he learns it. At GM's discretion, an alignment shift could change the options.
Clerics and paladins should logically be limited in protection options by their deity's alignment, but gain a choice when casting if the deity has two alignment components. Since oracles gain their spells from an entire pantheon, they should only be prohibited from casting protection against their own alignment components. True neutral deities would allow for any alignment protection.
Finally, since wizards and witches must prepare ahead of time, they should choose the alignment when preparing the spell, but not be limited by their own alignment.
Granted, this makes the rules way too complicated for a single spell for the sake of realism. It may be better to just make a spellcaster choose and alignment upon learning the spell. Perhaps a multiple choice version of the spell could be made as a second-level spell?