wp_attach_theme_preview_middleware() – Adds a middleware to `apiFetch` to set the theme for the preview.

You appear to be a bot. Output may be restricted

Description

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.

Usage

wp_attach_theme_preview_middleware();

Parameters

Returns

void

Source

File name: wordpress/wp-includes/theme-previews.php
Lines:

1 to 15 of 15
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'
  );
}
 

 View on GitHub View on Trac