Since the settings revisions are stored in postmeta of a custom post type, upon saving the settings the corresponding post can get a post_status of future. Filters can be added for all registered settings to override the current value with whatever value is stored in the most recently published (non-scheduled) settings revision post.
Take also into consideration how the settings get applied across timezones, where the time applied could either be absolute or relative.
Scheduling of settings should be on a per-setting basis, not scheduling all settings registered.
Since the settings revisions are stored in postmeta of a custom post type, upon saving the settings the corresponding post can get a
post_status
offuture
. Filters can be added for all registered settings to override the current value with whatever value is stored in the most recently published (non-scheduled) settings revision post.Take also into consideration how the settings get applied across timezones, where the time applied could either be absolute or relative.
Scheduling of settings should be on a per-setting basis, not scheduling all settings registered.