wp_add_iframed_editor_assets_html

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

WordPress Version: 6.1

/**
 * Inject the block editor assets that need to be loaded into the editor's iframe as an inline script.
 *
 * @since 5.8.0
 * @deprecated 6.0.0
 */
function wp_add_iframed_editor_assets_html()
{
    _deprecated_function(__FUNCTION__, '6.0.0');
}

WordPress Version: 5.9

/**
 * Inject the block editor assets that need to be loaded into the editor's iframe as an inline script.
 *
 * @since 5.8.0
 */
function wp_add_iframed_editor_assets_html()
{
    global $pagenow;
    if (!wp_should_load_block_editor_scripts_and_styles()) {
        return;
    }
    $script_handles = array();
    $style_handles = array('wp-block-editor', 'wp-block-library', 'wp-block-library-theme', 'wp-edit-blocks');
    if ('widgets.php' === $pagenow || 'customize.php' === $pagenow) {
        $style_handles[] = 'wp-widgets';
        $style_handles[] = 'wp-edit-widgets';
    }
    $block_registry = WP_Block_Type_Registry::get_instance();
    foreach ($block_registry->get_all_registered() as $block_type) {
        if (!empty($block_type->style)) {
            $style_handles[] = $block_type->style;
        }
        if (!empty($block_type->editor_style)) {
            $style_handles[] = $block_type->editor_style;
        }
        if (!empty($block_type->script)) {
            $script_handles[] = $block_type->script;
        }
    }
    $style_handles = array_unique($style_handles);
    $done = wp_styles()->done;
    ob_start();
    // We do not need reset styles for the iframed editor.
    wp_styles()->done = array('wp-reset-editor-styles');
    wp_styles()->do_items($style_handles);
    wp_styles()->done = $done;
    $styles = ob_get_clean();
    $script_handles = array_unique($script_handles);
    $done = wp_scripts()->done;
    ob_start();
    wp_scripts()->done = array();
    wp_scripts()->do_items($script_handles);
    wp_scripts()->done = $done;
    $scripts = ob_get_clean();
    $editor_assets = wp_json_encode(array('styles' => $styles, 'scripts' => $scripts));
    echo "<script>window.__editorAssets = {$editor_assets}</script>";
}

WordPress Version: 8.1

/**
 * Inject the block editor assets that need to be loaded into the editor's iframe as an inline script.
 *
 * @since 5.8.0
 */
function wp_add_iframed_editor_assets_html()
{
    if (!wp_should_load_block_editor_scripts_and_styles()) {
        return;
    }
    $script_handles = array();
    $style_handles = array('wp-block-editor', 'wp-block-library', 'wp-block-library-theme', 'wp-edit-blocks');
    $block_registry = WP_Block_Type_Registry::get_instance();
    foreach ($block_registry->get_all_registered() as $block_type) {
        if (!empty($block_type->style)) {
            $style_handles[] = $block_type->style;
        }
        if (!empty($block_type->editor_style)) {
            $style_handles[] = $block_type->editor_style;
        }
        if (!empty($block_type->script)) {
            $script_handles[] = $block_type->script;
        }
    }
    $style_handles = array_unique($style_handles);
    $done = wp_styles()->done;
    ob_start();
    wp_styles()->done = array();
    wp_styles()->do_items($style_handles);
    wp_styles()->done = $done;
    $styles = ob_get_clean();
    $script_handles = array_unique($script_handles);
    $done = wp_scripts()->done;
    ob_start();
    wp_scripts()->done = array();
    wp_scripts()->do_items($script_handles);
    wp_scripts()->done = $done;
    $scripts = ob_get_clean();
    $editor_assets = wp_json_encode(array('styles' => $styles, 'scripts' => $scripts));
    echo "<script>window.__editorAssets = {$editor_assets}</script>";
}

WordPress Version: 5.8

/**
 * Inject the block editor assets that need to be loaded into the editor's iframe as an inline script.
 *
 * @since 5.8.0
 */
function wp_add_iframed_editor_assets_html()
{
    $script_handles = array();
    $style_handles = array('wp-block-editor', 'wp-block-library', 'wp-block-library-theme', 'wp-edit-blocks');
    $block_registry = WP_Block_Type_Registry::get_instance();
    foreach ($block_registry->get_all_registered() as $block_type) {
        if (!empty($block_type->style)) {
            $style_handles[] = $block_type->style;
        }
        if (!empty($block_type->editor_style)) {
            $style_handles[] = $block_type->editor_style;
        }
        if (!empty($block_type->script)) {
            $script_handles[] = $block_type->script;
        }
    }
    $style_handles = array_unique($style_handles);
    $done = wp_styles()->done;
    ob_start();
    wp_styles()->done = array();
    wp_styles()->do_items($style_handles);
    wp_styles()->done = $done;
    $styles = ob_get_clean();
    $script_handles = array_unique($script_handles);
    $done = wp_scripts()->done;
    ob_start();
    wp_scripts()->done = array();
    wp_scripts()->do_items($script_handles);
    wp_scripts()->done = $done;
    $scripts = ob_get_clean();
    $editor_assets = wp_json_encode(array('styles' => $styles, 'scripts' => $scripts));
    echo "<script>window.__editorAssets = {$editor_assets}</script>";
}