PluginProbe
Gutenberg / 6.1.1
Gutenberg v6.1.1
23.9.1 23.9.0 23.8.0 23.7.2 23.7.1 23.7.0 23.6.1 23.6.2 23.6.0 23.5.3 23.5.2 23.5.1 23.5.0 23.4.0 23.3.2 23.3.1 23.3.0 23.2.0 23.2.1 23.2.2 23.1.1 23.1.0 23.0.1 12.6.0 7.4.0 All 402 releases
gutenberg / lib / widgets-page.php

widgets-page.php in Gutenberg 6.1.1, at lib/widgets-page.php

96 lines 2.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Bootstraping the Gutenberg widgets page.
4 *
5 * @package gutenberg
6 */
7
8 /**
9 * The main entry point for the Gutenberg widgets page.
10 *
11 * @since 5.2.0
12 *
13 * @param string $page The page name the function is being called for, `'gutenberg_customizer'` for the Customizer.
14 */
15 function the_gutenberg_widgets( $page = 'gutenberg_page_gutenberg-widgets' ) {
16 ?>
17 <div
18 id="widgets-editor"
19 class="blocks-widgets-container
20 <?php
21 echo 'gutenberg_customizer' === $page
22 ? ' is-in-customizer'
23 : '';
24 ?>
25 "
26 >
27 </div>
28 <?php
29 }
30
31 /**
32 * Initialize the Gutenberg widgets page.
33 *
34 * @since 5.2.0
35 *
36 * @param string $hook Page.
37 */
38 function gutenberg_widgets_init( $hook ) {
39 if ( 'gutenberg_page_gutenberg-widgets' !== $hook && 'gutenberg_customizer' !== $hook ) {
40 return;
41 }
42
43 $initializer_name = 'gutenberg_page_gutenberg-widgets' === $hook
44 ? 'initialize'
45 : 'customizerInitialize';
46
47 // Media settings.
48 $max_upload_size = wp_max_upload_size();
49 if ( ! $max_upload_size ) {
50 $max_upload_size = 0;
51 }
52
53 $settings = array_merge(
54 array(
55 'disableCustomColors' => get_theme_support( 'disable-custom-colors' ),
56 'disableCustomFontSizes' => get_theme_support( 'disable-custom-font-sizes' ),
57 'maxUploadFileSize' => $max_upload_size,
58 ),
59 gutenberg_get_legacy_widget_settings()
60 );
61
62 list( $color_palette, ) = (array) get_theme_support( 'editor-color-palette' );
63 list( $font_sizes, ) = (array) get_theme_support( 'editor-font-sizes' );
64
65 if ( false !== $color_palette ) {
66 $settings['colors'] = $color_palette;
67 }
68
69 if ( false !== $font_sizes ) {
70 $settings['fontSizes'] = $font_sizes;
71 }
72
73 wp_add_inline_script(
74 'wp-edit-widgets',
75 sprintf(
76 'wp.domReady( function() {
77 wp.editWidgets.%s( "widgets-editor", %s );
78 } );',
79 $initializer_name,
80 wp_json_encode( $settings )
81 )
82 );
83
84 // Preload server-registered block schemas.
85 wp_add_inline_script(
86 'wp-blocks',
87 'wp.blocks.unstable__bootstrapServerSideBlockDefinitions(' . wp_json_encode( get_block_editor_server_block_settings() ) . ');'
88 );
89
90 wp_enqueue_script( 'wp-edit-widgets' );
91 wp_enqueue_script( 'wp-format-library' );
92 wp_enqueue_style( 'wp-edit-widgets' );
93 wp_enqueue_style( 'wp-format-library' );
94 }
95 add_action( 'admin_enqueue_scripts', 'gutenberg_widgets_init' );
96