[wp-trac] [WordPress Trac] #39896: Customizer: Allow users to Draft changes before Publishing

WordPress Trac noreply at wordpress.org
Tue Sep 26 07:37:04 UTC 2017


#39896: Customizer: Allow users to Draft changes before Publishing
-------------------------------------------------+-------------------------
 Reporter:  melchoyce                            |       Owner:
     Type:  enhancement                          |  westonruter
 Priority:  high                                 |      Status:  accepted
Component:  Customize                            |   Milestone:  4.9
 Severity:  normal                               |     Version:
 Keywords:  has-patch needs-testing needs-unit-  |  Resolution:
  tests ui-feedback                              |     Focuses:  ui
-------------------------------------------------+-------------------------

Comment (by westonruter):

 In [changeset:"41597"]:
 {{{
 #!CommitTicketReference repository="" revision="41597"
 Customize: Extend changesets to support autosave revisions with
 restoration notifications, and introduce a new default linear history mode
 for saved changesets (with a filter for opt-in to changeset branching).

 * Autosaved changes made on top of `auto-draft` changesets get written on
 top of the `auto-draft` itself, similar to how autosaves for posts will
 overwrite post drafts.
 * Autosaved changes made to saved changesets (e.g. `draft`, `future`) will
 be placed into an autosave revision for that changeset and that user.
 * Opening the Customizer will now prompt the user to restore their most
 recent auto-draft changeset; if notification is dismissed or ignored then
 the auto-draft will be marked as dismissed and will not be prompted to
 user in a notification again.
 * Customizer will no longer automatically supply the `changeset_uuid`
 param in the `customize.php` URL when branching changesets are not active.
 * If user closes Customizer explicitly via clicking on X link, then
 autosave auto-draft/autosave will be dismissed so as to not be prompted
 again.
 * If there is a changeset already saved as a `draft` or `future` (UI is
 forthcoming) then this changeset will now be autoloaded for the user to
 keep making additional changes. This is the linear model for changesets.
 * To restore the previous behavior of the Customizer where each session
 started a new changeset, regardless of whether or not there was an
 existing changeset saved, there is now a `customize_changeset_branching`
 hook which can be filtered to return `true`.
 * `wp.customize.requestChangesetUpdate()` now supports a second with
 options including `autosave`, `title`, and `date`.
 * The window `blur` event for `customize.php` has been replaced with a
 `visibilitychange` event to reduce autosave requests when clicking into
 preview window.
 * Adds `autosaved` and `branching` args to `WP_Customize_Manager`.
 * The `changeset_uuid` param for `WP_Customize_Manager` is extended to
 recognize a `false` value which causes the Customizer to defer identifying
 the UUID until `after_setup_theme` in the new
 `WP_Customize_Manager::establish_loaded_changeset()` method.
 * A new `customize_autosaved` query parameter can now be supplied which is
 passed into the `autosaved` arg in `WP_Customize_Manager`; this option is
 an opt-in to source data from the autosave revision, allowing a user to
 restore autosaved changes.

 Props westonruter, dlh, sayedwp, JoshuaWold, melchoyce.
 See #39896.
 }}}

--
Ticket URL: <https://core.trac.wordpress.org/ticket/39896#comment:93>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list