PluginProbe
Gutenberg / 22.3.0
Gutenberg v22.3.0
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 / experimental / editor-settings.php

editor-settings.php in Gutenberg 22.3.0, at lib/experimental/editor-settings.php

79 lines 3.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Utilities to manage editor settings.
4 *
5 * @package gutenberg
6 */
7
8 /**
9 * Sets a global JS variable used to trigger the availability of each Gutenberg Experiment.
10 */
11 function gutenberg_enable_experiments() {
12 $gutenberg_experiments = get_option( 'gutenberg-experiments' );
13 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-sync-collaboration', $gutenberg_experiments ) ) {
14 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalEnableSync = true', 'before' );
15 }
16 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-color-randomizer', $gutenberg_experiments ) ) {
17 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalEnableColorRandomizer = true', 'before' );
18 }
19 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-grid-interactivity', $gutenberg_experiments ) ) {
20 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalEnableGridInteractivity = true', 'before' );
21 }
22 if ( gutenberg_is_experiment_enabled( 'gutenberg-no-tinymce' ) ) {
23 wp_add_inline_script( 'wp-block-library', 'window.__experimentalDisableTinymce = true', 'before' );
24 }
25 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-quick-edit-dataviews', $gutenberg_experiments ) ) {
26 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalQuickEditDataViews = true', 'before' );
27 }
28 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-dataviews-media-modal', $gutenberg_experiments ) ) {
29 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalDataViewsMediaModal = true', 'before' );
30 }
31 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-media-processing', $gutenberg_experiments ) ) {
32 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalMediaProcessing = true', 'before' );
33 }
34 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-content-only-pattern-insertion', $gutenberg_experiments ) ) {
35 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalContentOnlyPatternInsertion = true', 'before' );
36 // Only enable inspector fields if both parent and sub-experiment are enabled
37 if ( array_key_exists( 'gutenberg-content-only-inspector-fields', $gutenberg_experiments ) ) {
38 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalContentOnlyInspectorFields = true', 'before' );
39 }
40 }
41 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-customizable-navigation-overlays', $gutenberg_experiments ) ) {
42 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalNavigationOverlays = true', 'before' );
43 }
44 if ( gutenberg_is_experiment_enabled( 'active_templates' ) ) {
45 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalTemplateActivate = true', 'before' );
46 }
47 }
48
49 add_action( 'admin_init', 'gutenberg_enable_experiments' );
50 add_action( 'gutenberg-boot_init', 'gutenberg_enable_experiments' );
51
52 /**
53 * Sets a global JS variable used to trigger the availability of form & input blocks.
54 *
55 * @deprecated 19.0.0 Use gutenberg_enable_block_experiments().
56 */
57 function gutenberg_enable_form_input_blocks() {
58 _deprecated_function( __FUNCTION__, 'Gutenberg 19.0.0', 'gutenberg_enable_block_experiments' );
59 }
60
61 /**
62 * Sets global JS variables used to enable various block experiments.
63 */
64 function gutenberg_enable_block_experiments() {
65 $gutenberg_experiments = get_option( 'gutenberg-experiments' );
66
67 // Experimental form blocks.
68 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-form-blocks', $gutenberg_experiments ) ) {
69 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalEnableFormBlocks = true', 'before' );
70 }
71
72 // General experimental blocks that are not in the default block library.
73 if ( $gutenberg_experiments && array_key_exists( 'gutenberg-block-experiments', $gutenberg_experiments ) ) {
74 wp_add_inline_script( 'wp-block-editor', 'window.__experimentalEnableBlockExperiments = true', 'before' );
75 }
76 }
77
78 add_action( 'admin_init', 'gutenberg_enable_block_experiments' );
79