You don't make ALL workers work shorter shifts. Just create some flexibility so that in, say a 12 hour shift, you have say half the workers doing the full 12 hours and the other half being done by two sets of part timers working 6 hours, so there's still the continuity from the 12 hour workers. Or stagger shift patterns. It's really no surprise that they struggle to recruit if they are so inflexible.
My OH knows a few nurses very well because he's a regular visitor to the oncology day treatment centre for his regular infusions (7 years and counting!). There's usually one of the older ones retiring every few months as they can't cope with working full day shifts nor 5 day weeks. All have told him the same, that they've asked for part time, fewer days or half days, and been rejected, so they just retire! These are highly skilled/qualified/experienced cancer nurses.
The funny thing is that some of them have come back but at some kind of different level, for which there ARE part time/fewer day shifts, but they're not allowed to do the same work, so instead of administering chemo injections/setting up chem drips, etc., they're the ones doing the blood tests, making the tea round, and general "dogsbody" work, obviously being paid a lot less for a lower level of work. But it's so bloody stupid to force highly skilled nurses to do the HCA level of work because the management are too stubborn to consider letting them do the skilled work, but on a basis other than full time!
It's things like that which need to change. In real life business or other organisations, the employer would be falling over themselves to be flexible to keep on their skilled/experienced staff, yet in the NHS (and presumably other public sector), it seems to be "computer says no" causing the shortage in qualified staff.