wp_get_theme_preview_path

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

WordPress Version: 6.3

/**
 * Theme previews using the Site Editor for block themes.
 *
 * @package WordPress
 */
/**
 * Filters the blog option to return the path for the previewed theme.
 *
 * @since 6.3.0
 *
 * @param string $current_stylesheet The current theme's stylesheet or template path.
 * @return string The previewed theme's stylesheet or template path.
 */
function wp_get_theme_preview_path($current_stylesheet = null)
{
    if (!current_user_can('switch_themes')) {
        return $current_stylesheet;
    }
    $preview_stylesheet = (!empty($_GET['wp_theme_preview'])) ? sanitize_text_field(wp_unslash($_GET['wp_theme_preview'])) : null;
    $wp_theme = wp_get_theme($preview_stylesheet);
    if (!is_wp_error($wp_theme->errors())) {
        if (current_filter() === 'template') {
            $theme_path = $wp_theme->get_template();
        } else {
            $theme_path = $wp_theme->get_stylesheet();
        }
        return sanitize_text_field($theme_path);
    }
    return $current_stylesheet;
}