wp_attach_theme_preview_middleware

The timeline below displays how wordpress function wp_attach_theme_preview_middleware has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.3

/**
 * Adds a middleware to `apiFetch` to set the theme for the preview.
 * This adds a `wp_theme_preview` URL parameter to API requests from the Site Editor, so they also respond as if the theme is set to the value of the parameter.
 *
 * @since 6.3.0
 */
function wp_attach_theme_preview_middleware()
{
    // Don't allow non-admins to preview themes.
    if (!current_user_can('switch_themes')) {
        return;
    }
    wp_add_inline_script('wp-api-fetch', sprintf('wp.apiFetch.use( wp.apiFetch.createThemePreviewMiddleware( %s ) );', wp_json_encode(sanitize_text_field(wp_unslash($_GET['wp_theme_preview'])))), 'after');
}