I have a solution that doesn't entirely fit your requirements but I wanted to post it for people who find this page by doing an Internet search like I did:
I just recently solved the problem we were having with one of our cats scratching our wooden bedroom door (it's an old house) so much that...