I have a few chests in the wild that people have been buying from. Now they get a message you can only shop in town. Was there a change?
My guess, yes. Shops were never meant to work outside of town in the first place. The fact that they were (slot type shops at least) was unintended and most likely broken (err, fixed) in the latest update to the shop sign code.
You can get half of your money back by breaking the lock signs. Here is why we disabled the slot shop signs in the wild. It was discovered that they could be used to empty a locked chest. They were actually never intended to work in the wild. But was a cool extra feature until we were informed of this potential for exploit.
You could have it where if you make a shop in the wild, not only does it lock it, but the person has to pay for it
Perhaps. But more work needs to go into a feature like that; Aikar just needed to get a quick fix out to disable the exploit.