mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-08-14 05:40:30 +00:00
Customize: Implement customized state persistence with changesets.
Includes infrastructure developed in the Customize Snapshots feature plugin. See https://make.wordpress.org/core/2016/10/12/customize-changesets-technical-design-decisions/ Props westonruter, valendesigns, utkarshpatel, stubgo, lgedeon, ocean90, ryankienstra, mihai2u, dlh, aaroncampbell, jonathanbardo, jorbin. See #28721. See #31089. Fixes #30937. Fixes #31517. Fixes #30028. Fixes #23225. Fixes #34142. Fixes #36485. git-svn-id: https://develop.svn.wordpress.org/trunk@38810 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -366,15 +366,30 @@ function wp_admin_bar_site_menu( $wp_admin_bar ) {
|
||||
* @since 4.3.0
|
||||
*
|
||||
* @param WP_Admin_Bar $wp_admin_bar WP_Admin_Bar instance.
|
||||
* @global WP_Customize_Manager $wp_customize
|
||||
*/
|
||||
function wp_admin_bar_customize_menu( $wp_admin_bar ) {
|
||||
global $wp_customize;
|
||||
|
||||
// Don't show for users who can't access the customizer or when in the admin.
|
||||
if ( ! current_user_can( 'customize' ) || is_admin() ) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Don't show if the user cannot edit a given customize_changeset post currently being previewed.
|
||||
if ( is_customize_preview() && $wp_customize->changeset_post_id() && ! current_user_can( get_post_type_object( 'customize_changeset' )->cap->edit_post, $wp_customize->changeset_post_id() ) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$current_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
|
||||
if ( is_customize_preview() && $wp_customize->changeset_uuid() ) {
|
||||
$current_url = remove_query_arg( 'customize_changeset_uuid', $current_url );
|
||||
}
|
||||
|
||||
$customize_url = add_query_arg( 'url', urlencode( $current_url ), wp_customize_url() );
|
||||
if ( is_customize_preview() ) {
|
||||
$customize_url = add_query_arg( array( 'changeset_uuid' => $wp_customize->changeset_uuid() ), $customize_url );
|
||||
}
|
||||
|
||||
$wp_admin_bar->add_menu( array(
|
||||
'id' => 'customize',
|
||||
|
||||
Reference in New Issue
Block a user