It’s possible to achieve disabling the ability to change a content entry’s status via the options.changeStatus parameter in the blueprint. However, when doing this, Kirby blocks programmatic changing of a page’s status (returns a 403).
How to prevent content editors from changing an entry’s status while still allowing programmatic changing of it?
Usecase: A collection where all entries are always published, which is achieved by programmatically changing the status of new entries to listed (“published” on the frontend) when they’re created (via the page.create:after hook).
I had thought perhaps that I could simply hide the relevant portions of the UI via CSS, but there aren’t any unique classes or such to appropriately target these (at least not that I’ve been able to find).
However, since this option can be enabled/disabled for given user roles, you could only disable it for editor users, then update with an admin user?
This might actually work. It’s still less preferable because we really want to disable this for all users. But for our immediate needs it may suffice.