In Europe jobs have to be published. Even if there is no intention of filling it from the public. And companies also publish bullshit jobs which are used to manipulate regulatory requirements if needed (eg. if you want to hire a foreigner, you must prove you couldn't fill the position locally - by publishing it for 3 months).
No. If you publish it, you have to give an estimation of the salary, but that's the only limitation, at least in my country. Companies have internal guidelines, like in mine, you can't hire a relative to your own department, but the job i got wasn't on a public listing, it's my agent who gave my CV to my current team leader, he was interested, organized an itw, then 3 month later i hoped to my current job (and i am way better for it).
It is law, just not in every European country, but it's definitely not unusual.
And yes, companies often go with the lowest common denominator across Europe to avoid any doubt when dealing with multinational people. In my personal case it could be reasonably claimed that laws of 5 different countries apply to me based on citizenship, registered residence, actual places of work... Of course my employer wants to be covered.