@wordpress/block-library 8.9.0 → 8.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/comment-author-name/edit.js +1 -1
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-edit-link/edit.js +1 -1
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +1 -1
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/index.js +1 -1
- package/build/cover/variations.js +1 -1
- package/build/cover/variations.js.map +1 -1
- package/build/details/edit.js +19 -5
- package/build/details/edit.js.map +1 -1
- package/build/details/index.js +14 -10
- package/build/details/index.js.map +1 -1
- package/build/details/save.js +4 -1
- package/build/details/save.js.map +1 -1
- package/build/embed/variations.js +2 -2
- package/build/embed/variations.js.map +1 -1
- package/build/file/view.js +1 -1
- package/build/file/view.js.map +1 -1
- package/build/gallery/edit.js +2 -8
- package/build/gallery/edit.js.map +1 -1
- package/build/index.js +0 -6
- package/build/index.js.map +1 -1
- package/build/index.native.js +1 -1
- package/build/index.native.js.map +1 -1
- package/build/list-item/utils.js +5 -1
- package/build/list-item/utils.js.map +1 -1
- package/build/loginout/index.js +11 -1
- package/build/loginout/index.js.map +1 -1
- package/build/navigation/constants.js +13 -0
- package/build/navigation/constants.js.map +1 -0
- package/build/navigation/edit/index.js +16 -26
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +4 -7
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +4 -6
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/interactivity.js +139 -0
- package/build/navigation/interactivity.js.map +1 -0
- package/build/navigation-link/edit.js +1 -1
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +1 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/paragraph/index.js +5 -1
- package/build/paragraph/index.js.map +1 -1
- package/build/paragraph/transforms.js +5 -1
- package/build/paragraph/transforms.js.map +1 -1
- package/build/post-author-name/edit.js +1 -1
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +1 -2
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/overlay.js +5 -0
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/post-title/edit.js +14 -4
- package/build/post-title/edit.js.map +1 -1
- package/build/preformatted/edit.native.js +3 -2
- package/build/preformatted/edit.native.js.map +1 -1
- package/build/quote/transforms.js +16 -27
- package/build/quote/transforms.js.map +1 -1
- package/build/read-more/edit.js +1 -1
- package/build/read-more/edit.js.map +1 -1
- package/build/search/edit.js +9 -1
- package/build/search/edit.js.map +1 -1
- package/build/site-title/edit/index.js +1 -1
- package/build/site-title/edit/index.js.map +1 -1
- package/build/social-links/edit.js +2 -2
- package/build/social-links/edit.js.map +1 -1
- package/build/utils/interactivity/constants.js +9 -0
- package/build/utils/interactivity/constants.js.map +1 -0
- package/build/utils/interactivity/directives.js +208 -0
- package/build/utils/interactivity/directives.js.map +1 -0
- package/build/utils/interactivity/hooks.js +112 -0
- package/build/utils/interactivity/hooks.js.map +1 -0
- package/build/utils/interactivity/hydration.js +34 -0
- package/build/utils/interactivity/hydration.js.map +1 -0
- package/build/utils/interactivity/index.js +34 -0
- package/build/utils/interactivity/index.js.map +1 -0
- package/build/utils/interactivity/store.js +67 -0
- package/build/utils/interactivity/store.js.map +1 -0
- package/build/utils/interactivity/utils.js +87 -0
- package/build/utils/interactivity/utils.js.map +1 -0
- package/build/utils/interactivity/vdom.js +109 -0
- package/build/utils/interactivity/vdom.js.map +1 -0
- package/build-module/comment-author-name/edit.js +1 -1
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +1 -1
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +1 -1
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/index.js +1 -1
- package/build-module/cover/variations.js +1 -1
- package/build-module/cover/variations.js.map +1 -1
- package/build-module/details/edit.js +20 -6
- package/build-module/details/edit.js.map +1 -1
- package/build-module/details/index.js +14 -10
- package/build-module/details/index.js.map +1 -1
- package/build-module/details/save.js +5 -2
- package/build-module/details/save.js.map +1 -1
- package/build-module/embed/variations.js +2 -2
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/file/view.js +1 -1
- package/build-module/file/view.js.map +1 -1
- package/build-module/gallery/edit.js +2 -8
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/index.js +0 -4
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +1 -1
- package/build-module/index.native.js.map +1 -1
- package/build-module/list-item/utils.js +5 -1
- package/build-module/list-item/utils.js.map +1 -1
- package/build-module/loginout/index.js +11 -1
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/navigation/constants.js +5 -0
- package/build-module/navigation/constants.js.map +1 -0
- package/build-module/navigation/edit/index.js +18 -27
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +1 -4
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +1 -4
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/interactivity.js +136 -0
- package/build-module/navigation/interactivity.js.map +1 -0
- package/build-module/navigation-link/edit.js +1 -1
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +1 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/paragraph/index.js +5 -1
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/paragraph/transforms.js +5 -1
- package/build-module/paragraph/transforms.js.map +1 -1
- package/build-module/post-author-name/edit.js +1 -1
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +1 -2
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +5 -0
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/post-title/edit.js +13 -4
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/preformatted/edit.native.js +3 -2
- package/build-module/preformatted/edit.native.js.map +1 -1
- package/build-module/quote/transforms.js +16 -27
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/read-more/edit.js +1 -1
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/search/edit.js +9 -1
- package/build-module/search/edit.js.map +1 -1
- package/build-module/site-title/edit/index.js +1 -1
- package/build-module/site-title/edit/index.js.map +1 -1
- package/build-module/social-links/edit.js +2 -2
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/utils/interactivity/constants.js +2 -0
- package/build-module/utils/interactivity/constants.js.map +1 -0
- package/build-module/utils/interactivity/directives.js +193 -0
- package/build-module/utils/interactivity/directives.js.map +1 -0
- package/build-module/utils/interactivity/hooks.js +98 -0
- package/build-module/utils/interactivity/hooks.js.map +1 -0
- package/build-module/utils/interactivity/hydration.js +21 -0
- package/build-module/utils/interactivity/hydration.js.map +1 -0
- package/build-module/utils/interactivity/index.js +17 -0
- package/build-module/utils/interactivity/index.js.map +1 -0
- package/build-module/utils/interactivity/store.js +56 -0
- package/build-module/utils/interactivity/store.js.map +1 -0
- package/build-module/utils/interactivity/utils.js +75 -0
- package/build-module/utils/interactivity/utils.js.map +1 -0
- package/build-module/utils/interactivity/vdom.js +97 -0
- package/build-module/utils/interactivity/vdom.js.map +1 -0
- package/build-style/cover/style-rtl.css +2 -0
- package/build-style/cover/style.css +2 -0
- package/build-style/{details-summary → details}/editor-rtl.css +1 -1
- package/build-style/{details-summary → details}/editor.css +1 -1
- package/build-style/details/style-rtl.css +14 -0
- package/build-style/details/style.css +14 -0
- package/build-style/editor-rtl.css +3 -5
- package/build-style/editor.css +3 -5
- package/build-style/gallery/editor-rtl.css +0 -4
- package/build-style/gallery/editor.css +0 -4
- package/build-style/search/editor-rtl.css +1 -0
- package/build-style/search/editor.css +1 -0
- package/build-style/site-logo/editor-rtl.css +1 -0
- package/build-style/site-logo/editor.css +1 -0
- package/build-style/style-rtl.css +13 -1
- package/build-style/style.css +13 -1
- package/package.json +36 -32
- package/src/comment-author-name/edit.js +1 -1
- package/src/comment-edit-link/edit.js +1 -1
- package/src/comment-template/index.php +8 -7
- package/src/cover/block.json +1 -1
- package/src/cover/edit/inspector-controls.js +56 -54
- package/src/cover/style.scss +5 -0
- package/src/cover/test/edit.js +56 -2
- package/src/cover/variations.js +1 -3
- package/src/details/block.json +8 -6
- package/src/details/edit.js +27 -5
- package/src/details/editor.scss +3 -0
- package/src/details/index.js +10 -5
- package/src/details/save.js +5 -1
- package/src/details/style.scss +16 -0
- package/src/editor.scss +1 -1
- package/src/embed/variations.js +2 -2
- package/src/file/view.js +4 -1
- package/src/gallery/edit.js +5 -8
- package/src/gallery/editor.scss +0 -6
- package/src/gallery/test/index.native.js +48 -3
- package/src/image/test/edit.native.js +38 -16
- package/src/index.js +0 -4
- package/src/index.native.js +1 -0
- package/src/loginout/block.json +11 -1
- package/src/navigation/constants.js +16 -0
- package/src/navigation/edit/index.js +71 -83
- package/src/navigation/edit/inner-blocks.js +1 -16
- package/src/navigation/edit/unsaved-inner-blocks.js +1 -16
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +1 -1
- package/src/navigation/index.php +209 -203
- package/src/navigation/interactivity.js +144 -0
- package/src/navigation-link/edit.js +1 -1
- package/src/navigation-submenu/edit.js +1 -1
- package/src/paragraph/block.json +5 -1
- package/src/post-author-name/edit.js +1 -1
- package/src/post-featured-image/edit.js +1 -1
- package/src/post-featured-image/index.php +1 -1
- package/src/post-featured-image/overlay.js +4 -0
- package/src/post-terms/index.php +2 -2
- package/src/post-title/edit.js +8 -1
- package/src/preformatted/edit.native.js +1 -3
- package/src/quote/transforms.js +0 -6
- package/src/read-more/edit.js +1 -1
- package/src/search/edit.js +9 -4
- package/src/search/editor.scss +1 -0
- package/src/site-logo/editor.scss +2 -1
- package/src/site-title/edit/index.js +1 -1
- package/src/social-links/edit.js +33 -31
- package/src/style.scss +0 -1
- package/src/template-part/index.php +20 -5
- package/src/utils/interactivity/constants.js +1 -0
- package/src/utils/interactivity/directives.js +179 -0
- package/src/utils/interactivity/hooks.js +76 -0
- package/src/utils/interactivity/hydration.js +22 -0
- package/src/utils/interactivity/index.js +17 -0
- package/src/utils/interactivity/store.js +45 -0
- package/src/utils/interactivity/utils.js +66 -0
- package/src/utils/interactivity/vdom.js +94 -0
- package/tsconfig.json +1 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/details-content/edit.js +0 -34
- package/build/details-content/edit.js.map +0 -1
- package/build/details-content/index.js +0 -94
- package/build/details-content/index.js.map +0 -1
- package/build/details-content/save.js +0 -20
- package/build/details-content/save.js.map +0 -1
- package/build/details-summary/edit.js +0 -42
- package/build/details-summary/edit.js.map +0 -1
- package/build/details-summary/index.js +0 -97
- package/build/details-summary/index.js.map +0 -1
- package/build/details-summary/save.js +0 -24
- package/build/details-summary/save.js.map +0 -1
- package/build-module/details-content/edit.js +0 -23
- package/build-module/details-content/edit.js.map +0 -1
- package/build-module/details-content/index.js +0 -76
- package/build-module/details-content/index.js.map +0 -1
- package/build-module/details-content/save.js +0 -11
- package/build-module/details-content/save.js.map +0 -1
- package/build-module/details-summary/edit.js +0 -30
- package/build-module/details-summary/edit.js.map +0 -1
- package/build-module/details-summary/index.js +0 -79
- package/build-module/details-summary/index.js.map +0 -1
- package/build-module/details-summary/save.js +0 -16
- package/build-module/details-summary/save.js.map +0 -1
- package/build-style/details-summary/style-rtl.css +0 -91
- package/build-style/details-summary/style.css +0 -91
- package/src/details-content/block.json +0 -50
- package/src/details-content/edit.js +0 -29
- package/src/details-content/index.js +0 -23
- package/src/details-content/save.js +0 -12
- package/src/details-summary/block.json +0 -53
- package/src/details-summary/edit.js +0 -27
- package/src/details-summary/editor.scss +0 -3
- package/src/details-summary/index.js +0 -23
- package/src/details-summary/save.js +0 -13
- package/src/details-summary/style.scss +0 -3
package/src/navigation/index.php
CHANGED
|
@@ -67,60 +67,7 @@ if ( defined( 'IS_GUTENBERG_PLUGIN' ) && IS_GUTENBERG_PLUGIN ) {
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
/**
|
|
71
|
-
* Turns menu item data into a nested array of parsed blocks
|
|
72
|
-
*
|
|
73
|
-
* @param array $menu_items An array of menu items that represent
|
|
74
|
-
* an individual level of a menu.
|
|
75
|
-
* @param array $menu_items_by_parent_id An array keyed by the id of the
|
|
76
|
-
* parent menu where each element is an
|
|
77
|
-
* array of menu items that belong to
|
|
78
|
-
* that parent.
|
|
79
|
-
* @return array An array of parsed block data.
|
|
80
|
-
*/
|
|
81
|
-
function block_core_navigation_parse_blocks_from_menu_items( $menu_items, $menu_items_by_parent_id ) {
|
|
82
|
-
|
|
83
|
-
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::parse_blocks_from_menu_items' );
|
|
84
|
-
|
|
85
|
-
if ( empty( $menu_items ) ) {
|
|
86
|
-
return array();
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
$blocks = array();
|
|
90
|
-
|
|
91
|
-
foreach ( $menu_items as $menu_item ) {
|
|
92
|
-
$class_name = ! empty( $menu_item->classes ) ? implode( ' ', (array) $menu_item->classes ) : null;
|
|
93
|
-
$id = ( null !== $menu_item->object_id && 'custom' !== $menu_item->object ) ? $menu_item->object_id : null;
|
|
94
|
-
$opens_in_new_tab = null !== $menu_item->target && '_blank' === $menu_item->target;
|
|
95
|
-
$rel = ( null !== $menu_item->xfn && '' !== $menu_item->xfn ) ? $menu_item->xfn : null;
|
|
96
|
-
$kind = null !== $menu_item->type ? str_replace( '_', '-', $menu_item->type ) : 'custom';
|
|
97
|
-
|
|
98
|
-
$block = array(
|
|
99
|
-
'blockName' => isset( $menu_items_by_parent_id[ $menu_item->ID ] ) ? 'core/navigation-submenu' : 'core/navigation-link',
|
|
100
|
-
'attrs' => array(
|
|
101
|
-
'className' => $class_name,
|
|
102
|
-
'description' => $menu_item->description,
|
|
103
|
-
'id' => $id,
|
|
104
|
-
'kind' => $kind,
|
|
105
|
-
'label' => $menu_item->title,
|
|
106
|
-
'opensInNewTab' => $opens_in_new_tab,
|
|
107
|
-
'rel' => $rel,
|
|
108
|
-
'title' => $menu_item->attr_title,
|
|
109
|
-
'type' => $menu_item->object,
|
|
110
|
-
'url' => $menu_item->url,
|
|
111
|
-
),
|
|
112
|
-
);
|
|
113
70
|
|
|
114
|
-
$block['innerBlocks'] = isset( $menu_items_by_parent_id[ $menu_item->ID ] )
|
|
115
|
-
? block_core_navigation_parse_blocks_from_menu_items( $menu_items_by_parent_id[ $menu_item->ID ], $menu_items_by_parent_id )
|
|
116
|
-
: array();
|
|
117
|
-
$block['innerContent'] = array_map( 'serialize_block', $block['innerBlocks'] );
|
|
118
|
-
|
|
119
|
-
$blocks[] = $block;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
return $blocks;
|
|
123
|
-
}
|
|
124
71
|
|
|
125
72
|
/**
|
|
126
73
|
* Build an array with CSS classes and inline styles defining the colors
|
|
@@ -251,159 +198,9 @@ function block_core_navigation_render_submenu_icon() {
|
|
|
251
198
|
return '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true" focusable="false"><path d="M1.50002 4L6.00002 8L10.5 4" stroke-width="1.5"></path></svg>';
|
|
252
199
|
}
|
|
253
200
|
|
|
254
|
-
/**
|
|
255
|
-
* Get the classic navigation menu to use as a fallback.
|
|
256
|
-
*
|
|
257
|
-
* @return object WP_Term The classic navigation.
|
|
258
|
-
*/
|
|
259
|
-
function block_core_navigation_get_classic_menu_fallback() {
|
|
260
|
-
|
|
261
|
-
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::get_classic_menu_fallback' );
|
|
262
|
-
|
|
263
|
-
$classic_nav_menus = wp_get_nav_menus();
|
|
264
|
-
|
|
265
|
-
// If menus exist.
|
|
266
|
-
if ( $classic_nav_menus && ! is_wp_error( $classic_nav_menus ) ) {
|
|
267
|
-
// Handles simple use case where user has a classic menu and switches to a block theme.
|
|
268
|
-
|
|
269
|
-
// Returns the menu assigned to location `primary`.
|
|
270
|
-
$locations = get_nav_menu_locations();
|
|
271
|
-
if ( isset( $locations['primary'] ) ) {
|
|
272
|
-
$primary_menu = wp_get_nav_menu_object( $locations['primary'] );
|
|
273
|
-
if ( $primary_menu ) {
|
|
274
|
-
return $primary_menu;
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
// Returns a menu if `primary` is its slug.
|
|
279
|
-
foreach ( $classic_nav_menus as $classic_nav_menu ) {
|
|
280
|
-
if ( 'primary' === $classic_nav_menu->slug ) {
|
|
281
|
-
return $classic_nav_menu;
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
// Otherwise return the most recently created classic menu.
|
|
286
|
-
usort(
|
|
287
|
-
$classic_nav_menus,
|
|
288
|
-
function( $a, $b ) {
|
|
289
|
-
return $b->term_id - $a->term_id;
|
|
290
|
-
}
|
|
291
|
-
);
|
|
292
|
-
return $classic_nav_menus[0];
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
/**
|
|
297
|
-
* Converts a classic navigation to blocks.
|
|
298
|
-
*
|
|
299
|
-
* @param object $classic_nav_menu WP_Term The classic navigation object to convert.
|
|
300
|
-
* @return array the normalized parsed blocks.
|
|
301
|
-
*/
|
|
302
|
-
function block_core_navigation_get_classic_menu_fallback_blocks( $classic_nav_menu ) {
|
|
303
|
-
|
|
304
|
-
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::get_classic_menu_fallback_blocks' );
|
|
305
|
-
|
|
306
|
-
// BEGIN: Code that already exists in wp_nav_menu().
|
|
307
|
-
$menu_items = wp_get_nav_menu_items( $classic_nav_menu->term_id, array( 'update_post_term_cache' => false ) );
|
|
308
|
-
|
|
309
|
-
// Set up the $menu_item variables.
|
|
310
|
-
_wp_menu_item_classes_by_context( $menu_items );
|
|
311
|
-
|
|
312
|
-
$sorted_menu_items = array();
|
|
313
|
-
foreach ( (array) $menu_items as $menu_item ) {
|
|
314
|
-
$sorted_menu_items[ $menu_item->menu_order ] = $menu_item;
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
unset( $menu_items, $menu_item );
|
|
318
|
-
|
|
319
|
-
// END: Code that already exists in wp_nav_menu().
|
|
320
|
-
|
|
321
|
-
$menu_items_by_parent_id = array();
|
|
322
|
-
foreach ( $sorted_menu_items as $menu_item ) {
|
|
323
|
-
$menu_items_by_parent_id[ $menu_item->menu_item_parent ][] = $menu_item;
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
$inner_blocks = block_core_navigation_parse_blocks_from_menu_items(
|
|
327
|
-
isset( $menu_items_by_parent_id[0] )
|
|
328
|
-
? $menu_items_by_parent_id[0]
|
|
329
|
-
: array(),
|
|
330
|
-
$menu_items_by_parent_id
|
|
331
|
-
);
|
|
332
|
-
|
|
333
|
-
return serialize_blocks( $inner_blocks );
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
/**
|
|
337
|
-
* If there's a the classic menu then use it as a fallback.
|
|
338
|
-
*
|
|
339
|
-
* @return array the normalized parsed blocks.
|
|
340
|
-
*/
|
|
341
|
-
function block_core_navigation_maybe_use_classic_menu_fallback() {
|
|
342
|
-
|
|
343
|
-
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::create_classic_menu_fallback' );
|
|
344
201
|
|
|
345
|
-
// See if we have a classic menu.
|
|
346
|
-
$classic_nav_menu = block_core_navigation_get_classic_menu_fallback();
|
|
347
202
|
|
|
348
|
-
if ( ! $classic_nav_menu ) {
|
|
349
|
-
return;
|
|
350
|
-
}
|
|
351
203
|
|
|
352
|
-
// If we have a classic menu then convert it to blocks.
|
|
353
|
-
$classic_nav_menu_blocks = block_core_navigation_get_classic_menu_fallback_blocks( $classic_nav_menu );
|
|
354
|
-
|
|
355
|
-
if ( empty( $classic_nav_menu_blocks ) ) {
|
|
356
|
-
return;
|
|
357
|
-
}
|
|
358
|
-
|
|
359
|
-
// Create a new navigation menu from the classic menu.
|
|
360
|
-
$wp_insert_post_result = wp_insert_post(
|
|
361
|
-
array(
|
|
362
|
-
'post_content' => $classic_nav_menu_blocks,
|
|
363
|
-
'post_title' => $classic_nav_menu->name,
|
|
364
|
-
'post_name' => $classic_nav_menu->slug,
|
|
365
|
-
'post_status' => 'publish',
|
|
366
|
-
'post_type' => 'wp_navigation',
|
|
367
|
-
),
|
|
368
|
-
true // So that we can check whether the result is an error.
|
|
369
|
-
);
|
|
370
|
-
|
|
371
|
-
if ( is_wp_error( $wp_insert_post_result ) ) {
|
|
372
|
-
return;
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
// Fetch the most recently published navigation which will be the classic one created above.
|
|
376
|
-
return block_core_navigation_get_most_recently_published_navigation();
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
/**
|
|
380
|
-
* Finds the most recently published `wp_navigation` Post.
|
|
381
|
-
*
|
|
382
|
-
* @return WP_Post|null the first non-empty Navigation or null.
|
|
383
|
-
*/
|
|
384
|
-
function block_core_navigation_get_most_recently_published_navigation() {
|
|
385
|
-
|
|
386
|
-
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::get_most_recently_published_navigation' );
|
|
387
|
-
|
|
388
|
-
// Default to the most recently created menu.
|
|
389
|
-
$parsed_args = array(
|
|
390
|
-
'post_type' => 'wp_navigation',
|
|
391
|
-
'no_found_rows' => true,
|
|
392
|
-
'update_post_meta_cache' => false,
|
|
393
|
-
'update_post_term_cache' => false,
|
|
394
|
-
'order' => 'DESC',
|
|
395
|
-
'orderby' => 'date',
|
|
396
|
-
'post_status' => 'publish',
|
|
397
|
-
'posts_per_page' => 1, // get only the most recent.
|
|
398
|
-
);
|
|
399
|
-
|
|
400
|
-
$navigation_post = new WP_Query( $parsed_args );
|
|
401
|
-
if ( count( $navigation_post->posts ) > 0 ) {
|
|
402
|
-
return $navigation_post->posts[0];
|
|
403
|
-
}
|
|
404
|
-
|
|
405
|
-
return null;
|
|
406
|
-
}
|
|
407
204
|
|
|
408
205
|
/**
|
|
409
206
|
* Filter out empty "null" blocks from the block list.
|
|
@@ -881,3 +678,212 @@ function block_core_navigation_typographic_presets_backcompatibility( $parsed_bl
|
|
|
881
678
|
}
|
|
882
679
|
|
|
883
680
|
add_filter( 'render_block_data', 'block_core_navigation_typographic_presets_backcompatibility' );
|
|
681
|
+
|
|
682
|
+
/**
|
|
683
|
+
* Turns menu item data into a nested array of parsed blocks
|
|
684
|
+
*
|
|
685
|
+
* @param array $menu_items An array of menu items that represent
|
|
686
|
+
* an individual level of a menu.
|
|
687
|
+
* @param array $menu_items_by_parent_id An array keyed by the id of the
|
|
688
|
+
* parent menu where each element is an
|
|
689
|
+
* array of menu items that belong to
|
|
690
|
+
* that parent.
|
|
691
|
+
* @return array An array of parsed block data.
|
|
692
|
+
*/
|
|
693
|
+
function block_core_navigation_parse_blocks_from_menu_items( $menu_items, $menu_items_by_parent_id ) {
|
|
694
|
+
|
|
695
|
+
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::parse_blocks_from_menu_items' );
|
|
696
|
+
|
|
697
|
+
if ( empty( $menu_items ) ) {
|
|
698
|
+
return array();
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
$blocks = array();
|
|
702
|
+
|
|
703
|
+
foreach ( $menu_items as $menu_item ) {
|
|
704
|
+
$class_name = ! empty( $menu_item->classes ) ? implode( ' ', (array) $menu_item->classes ) : null;
|
|
705
|
+
$id = ( null !== $menu_item->object_id && 'custom' !== $menu_item->object ) ? $menu_item->object_id : null;
|
|
706
|
+
$opens_in_new_tab = null !== $menu_item->target && '_blank' === $menu_item->target;
|
|
707
|
+
$rel = ( null !== $menu_item->xfn && '' !== $menu_item->xfn ) ? $menu_item->xfn : null;
|
|
708
|
+
$kind = null !== $menu_item->type ? str_replace( '_', '-', $menu_item->type ) : 'custom';
|
|
709
|
+
|
|
710
|
+
$block = array(
|
|
711
|
+
'blockName' => isset( $menu_items_by_parent_id[ $menu_item->ID ] ) ? 'core/navigation-submenu' : 'core/navigation-link',
|
|
712
|
+
'attrs' => array(
|
|
713
|
+
'className' => $class_name,
|
|
714
|
+
'description' => $menu_item->description,
|
|
715
|
+
'id' => $id,
|
|
716
|
+
'kind' => $kind,
|
|
717
|
+
'label' => $menu_item->title,
|
|
718
|
+
'opensInNewTab' => $opens_in_new_tab,
|
|
719
|
+
'rel' => $rel,
|
|
720
|
+
'title' => $menu_item->attr_title,
|
|
721
|
+
'type' => $menu_item->object,
|
|
722
|
+
'url' => $menu_item->url,
|
|
723
|
+
),
|
|
724
|
+
);
|
|
725
|
+
|
|
726
|
+
$block['innerBlocks'] = isset( $menu_items_by_parent_id[ $menu_item->ID ] )
|
|
727
|
+
? block_core_navigation_parse_blocks_from_menu_items( $menu_items_by_parent_id[ $menu_item->ID ], $menu_items_by_parent_id )
|
|
728
|
+
: array();
|
|
729
|
+
$block['innerContent'] = array_map( 'serialize_block', $block['innerBlocks'] );
|
|
730
|
+
|
|
731
|
+
$blocks[] = $block;
|
|
732
|
+
}
|
|
733
|
+
|
|
734
|
+
return $blocks;
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
/**
|
|
738
|
+
* Get the classic navigation menu to use as a fallback.
|
|
739
|
+
*
|
|
740
|
+
* @return object WP_Term The classic navigation.
|
|
741
|
+
*/
|
|
742
|
+
function block_core_navigation_get_classic_menu_fallback() {
|
|
743
|
+
|
|
744
|
+
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::get_classic_menu_fallback' );
|
|
745
|
+
|
|
746
|
+
$classic_nav_menus = wp_get_nav_menus();
|
|
747
|
+
|
|
748
|
+
// If menus exist.
|
|
749
|
+
if ( $classic_nav_menus && ! is_wp_error( $classic_nav_menus ) ) {
|
|
750
|
+
// Handles simple use case where user has a classic menu and switches to a block theme.
|
|
751
|
+
|
|
752
|
+
// Returns the menu assigned to location `primary`.
|
|
753
|
+
$locations = get_nav_menu_locations();
|
|
754
|
+
if ( isset( $locations['primary'] ) ) {
|
|
755
|
+
$primary_menu = wp_get_nav_menu_object( $locations['primary'] );
|
|
756
|
+
if ( $primary_menu ) {
|
|
757
|
+
return $primary_menu;
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
// Returns a menu if `primary` is its slug.
|
|
762
|
+
foreach ( $classic_nav_menus as $classic_nav_menu ) {
|
|
763
|
+
if ( 'primary' === $classic_nav_menu->slug ) {
|
|
764
|
+
return $classic_nav_menu;
|
|
765
|
+
}
|
|
766
|
+
}
|
|
767
|
+
|
|
768
|
+
// Otherwise return the most recently created classic menu.
|
|
769
|
+
usort(
|
|
770
|
+
$classic_nav_menus,
|
|
771
|
+
function( $a, $b ) {
|
|
772
|
+
return $b->term_id - $a->term_id;
|
|
773
|
+
}
|
|
774
|
+
);
|
|
775
|
+
return $classic_nav_menus[0];
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
|
|
779
|
+
/**
|
|
780
|
+
* Converts a classic navigation to blocks.
|
|
781
|
+
*
|
|
782
|
+
* @param object $classic_nav_menu WP_Term The classic navigation object to convert.
|
|
783
|
+
* @return array the normalized parsed blocks.
|
|
784
|
+
*/
|
|
785
|
+
function block_core_navigation_get_classic_menu_fallback_blocks( $classic_nav_menu ) {
|
|
786
|
+
|
|
787
|
+
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::get_classic_menu_fallback_blocks' );
|
|
788
|
+
|
|
789
|
+
// BEGIN: Code that already exists in wp_nav_menu().
|
|
790
|
+
$menu_items = wp_get_nav_menu_items( $classic_nav_menu->term_id, array( 'update_post_term_cache' => false ) );
|
|
791
|
+
|
|
792
|
+
// Set up the $menu_item variables.
|
|
793
|
+
_wp_menu_item_classes_by_context( $menu_items );
|
|
794
|
+
|
|
795
|
+
$sorted_menu_items = array();
|
|
796
|
+
foreach ( (array) $menu_items as $menu_item ) {
|
|
797
|
+
$sorted_menu_items[ $menu_item->menu_order ] = $menu_item;
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
unset( $menu_items, $menu_item );
|
|
801
|
+
|
|
802
|
+
// END: Code that already exists in wp_nav_menu().
|
|
803
|
+
|
|
804
|
+
$menu_items_by_parent_id = array();
|
|
805
|
+
foreach ( $sorted_menu_items as $menu_item ) {
|
|
806
|
+
$menu_items_by_parent_id[ $menu_item->menu_item_parent ][] = $menu_item;
|
|
807
|
+
}
|
|
808
|
+
|
|
809
|
+
$inner_blocks = block_core_navigation_parse_blocks_from_menu_items(
|
|
810
|
+
isset( $menu_items_by_parent_id[0] )
|
|
811
|
+
? $menu_items_by_parent_id[0]
|
|
812
|
+
: array(),
|
|
813
|
+
$menu_items_by_parent_id
|
|
814
|
+
);
|
|
815
|
+
|
|
816
|
+
return serialize_blocks( $inner_blocks );
|
|
817
|
+
}
|
|
818
|
+
|
|
819
|
+
/**
|
|
820
|
+
* If there's a the classic menu then use it as a fallback.
|
|
821
|
+
*
|
|
822
|
+
* @return array the normalized parsed blocks.
|
|
823
|
+
*/
|
|
824
|
+
function block_core_navigation_maybe_use_classic_menu_fallback() {
|
|
825
|
+
|
|
826
|
+
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::create_classic_menu_fallback' );
|
|
827
|
+
|
|
828
|
+
// See if we have a classic menu.
|
|
829
|
+
$classic_nav_menu = block_core_navigation_get_classic_menu_fallback();
|
|
830
|
+
|
|
831
|
+
if ( ! $classic_nav_menu ) {
|
|
832
|
+
return;
|
|
833
|
+
}
|
|
834
|
+
|
|
835
|
+
// If we have a classic menu then convert it to blocks.
|
|
836
|
+
$classic_nav_menu_blocks = block_core_navigation_get_classic_menu_fallback_blocks( $classic_nav_menu );
|
|
837
|
+
|
|
838
|
+
if ( empty( $classic_nav_menu_blocks ) ) {
|
|
839
|
+
return;
|
|
840
|
+
}
|
|
841
|
+
|
|
842
|
+
// Create a new navigation menu from the classic menu.
|
|
843
|
+
$wp_insert_post_result = wp_insert_post(
|
|
844
|
+
array(
|
|
845
|
+
'post_content' => $classic_nav_menu_blocks,
|
|
846
|
+
'post_title' => $classic_nav_menu->name,
|
|
847
|
+
'post_name' => $classic_nav_menu->slug,
|
|
848
|
+
'post_status' => 'publish',
|
|
849
|
+
'post_type' => 'wp_navigation',
|
|
850
|
+
),
|
|
851
|
+
true // So that we can check whether the result is an error.
|
|
852
|
+
);
|
|
853
|
+
|
|
854
|
+
if ( is_wp_error( $wp_insert_post_result ) ) {
|
|
855
|
+
return;
|
|
856
|
+
}
|
|
857
|
+
|
|
858
|
+
// Fetch the most recently published navigation which will be the classic one created above.
|
|
859
|
+
return block_core_navigation_get_most_recently_published_navigation();
|
|
860
|
+
}
|
|
861
|
+
|
|
862
|
+
/**
|
|
863
|
+
* Finds the most recently published `wp_navigation` Post.
|
|
864
|
+
*
|
|
865
|
+
* @return WP_Post|null the first non-empty Navigation or null.
|
|
866
|
+
*/
|
|
867
|
+
function block_core_navigation_get_most_recently_published_navigation() {
|
|
868
|
+
|
|
869
|
+
_deprecated_function( __FUNCTION__, '6.3.0', 'WP_Navigation_Fallback_Gutenberg::get_most_recently_published_navigation' );
|
|
870
|
+
|
|
871
|
+
// Default to the most recently created menu.
|
|
872
|
+
$parsed_args = array(
|
|
873
|
+
'post_type' => 'wp_navigation',
|
|
874
|
+
'no_found_rows' => true,
|
|
875
|
+
'update_post_meta_cache' => false,
|
|
876
|
+
'update_post_term_cache' => false,
|
|
877
|
+
'order' => 'DESC',
|
|
878
|
+
'orderby' => 'date',
|
|
879
|
+
'post_status' => 'publish',
|
|
880
|
+
'posts_per_page' => 1, // get only the most recent.
|
|
881
|
+
);
|
|
882
|
+
|
|
883
|
+
$navigation_post = new WP_Query( $parsed_args );
|
|
884
|
+
if ( count( $navigation_post->posts ) > 0 ) {
|
|
885
|
+
return $navigation_post->posts[0];
|
|
886
|
+
}
|
|
887
|
+
|
|
888
|
+
return null;
|
|
889
|
+
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { store } from '../utils/interactivity';
|
|
5
|
+
|
|
6
|
+
const focusableSelectors = [
|
|
7
|
+
'a[href]',
|
|
8
|
+
'area[href]',
|
|
9
|
+
'input:not([disabled]):not([type="hidden"]):not([aria-hidden])',
|
|
10
|
+
'select:not([disabled]):not([aria-hidden])',
|
|
11
|
+
'textarea:not([disabled]):not([aria-hidden])',
|
|
12
|
+
'button:not([disabled]):not([aria-hidden])',
|
|
13
|
+
'iframe',
|
|
14
|
+
'object',
|
|
15
|
+
'embed',
|
|
16
|
+
'[contenteditable]',
|
|
17
|
+
'[tabindex]:not([tabindex^="-"])',
|
|
18
|
+
];
|
|
19
|
+
|
|
20
|
+
store( {
|
|
21
|
+
effects: {
|
|
22
|
+
core: {
|
|
23
|
+
navigation: {
|
|
24
|
+
initModal: async ( { context, ref } ) => {
|
|
25
|
+
if ( context.core.navigation.isMenuOpen ) {
|
|
26
|
+
const focusableElements =
|
|
27
|
+
ref.querySelectorAll( focusableSelectors );
|
|
28
|
+
context.core.navigation.modal = ref;
|
|
29
|
+
context.core.navigation.firstFocusableElement =
|
|
30
|
+
focusableElements[ 0 ];
|
|
31
|
+
context.core.navigation.lastFocusableElement =
|
|
32
|
+
focusableElements[ focusableElements.length - 1 ];
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
focusFirstElement: async ( { context, ref } ) => {
|
|
36
|
+
if ( context.core.navigation.isMenuOpen ) {
|
|
37
|
+
ref.querySelector(
|
|
38
|
+
'.wp-block-navigation-item > *:first-child'
|
|
39
|
+
).focus();
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
selectors: {
|
|
46
|
+
core: {
|
|
47
|
+
navigation: {
|
|
48
|
+
roleAttribute: ( { context } ) => {
|
|
49
|
+
return context.core.navigation.overlay &&
|
|
50
|
+
context.core.navigation.isMenuOpen
|
|
51
|
+
? 'dialog'
|
|
52
|
+
: '';
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
actions: {
|
|
58
|
+
core: {
|
|
59
|
+
navigation: {
|
|
60
|
+
openMenu: ( { context, ref } ) => {
|
|
61
|
+
context.core.navigation.isMenuOpen = true;
|
|
62
|
+
context.core.navigation.previousFocus = ref;
|
|
63
|
+
if ( context.core.navigation.overlay ) {
|
|
64
|
+
// It adds a `has-modal-open` class to the <html> root
|
|
65
|
+
document.documentElement.classList.add(
|
|
66
|
+
'has-modal-open'
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
closeMenu: ( { context } ) => {
|
|
71
|
+
if ( context.core.navigation.isMenuOpen ) {
|
|
72
|
+
context.core.navigation.isMenuOpen = false;
|
|
73
|
+
if (
|
|
74
|
+
context.core.navigation.modal.contains(
|
|
75
|
+
window.document.activeElement
|
|
76
|
+
)
|
|
77
|
+
) {
|
|
78
|
+
context.core.navigation.previousFocus.focus();
|
|
79
|
+
}
|
|
80
|
+
context.core.navigation.modal = null;
|
|
81
|
+
context.core.navigation.previousFocus = null;
|
|
82
|
+
if ( context.core.navigation.overlay ) {
|
|
83
|
+
document.documentElement.classList.remove(
|
|
84
|
+
'has-modal-open'
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
handleMenuKeydown: ( { actions, context, event } ) => {
|
|
90
|
+
if ( context.core.navigation.isMenuOpen ) {
|
|
91
|
+
// If Escape close the menu
|
|
92
|
+
if (
|
|
93
|
+
event?.key === 'Escape' ||
|
|
94
|
+
event?.keyCode === 27
|
|
95
|
+
) {
|
|
96
|
+
actions.core.navigation.closeMenu( { context } );
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
// Trap focus if it is an overlay (main menu)
|
|
101
|
+
if (
|
|
102
|
+
context.core.navigation.overlay &&
|
|
103
|
+
( event.key === 'Tab' || event.keyCode === 9 )
|
|
104
|
+
) {
|
|
105
|
+
// If shift + tab it change the direction
|
|
106
|
+
if (
|
|
107
|
+
event.shiftKey &&
|
|
108
|
+
window.document.activeElement ===
|
|
109
|
+
context.core.navigation
|
|
110
|
+
.firstFocusableElement
|
|
111
|
+
) {
|
|
112
|
+
event.preventDefault();
|
|
113
|
+
context.core.navigation.lastFocusableElement.focus();
|
|
114
|
+
} else if (
|
|
115
|
+
! event.shiftKey &&
|
|
116
|
+
window.document.activeElement ===
|
|
117
|
+
context.core.navigation.lastFocusableElement
|
|
118
|
+
) {
|
|
119
|
+
event.preventDefault();
|
|
120
|
+
context.core.navigation.firstFocusableElement.focus();
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
handleMenuFocusout: ( { actions, context, event } ) => {
|
|
126
|
+
if ( context.core.navigation.isMenuOpen ) {
|
|
127
|
+
// If focus is outside modal, and in the document, close menu
|
|
128
|
+
// event.target === The element losing focus
|
|
129
|
+
// event.relatedTarget === The element receiving focus (if any)
|
|
130
|
+
// When focusout is outsite the document, `window.document.activeElement` doesn't change
|
|
131
|
+
if (
|
|
132
|
+
! context.core.navigation.modal.contains(
|
|
133
|
+
event.relatedTarget
|
|
134
|
+
) &&
|
|
135
|
+
event.target !== window.document.activeElement
|
|
136
|
+
) {
|
|
137
|
+
actions.core.navigation.closeMenu( { context } );
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
},
|
|
144
|
+
} );
|
|
@@ -429,7 +429,7 @@ export default function NavigationLinkEdit( {
|
|
|
429
429
|
</BlockControls>
|
|
430
430
|
{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }
|
|
431
431
|
<InspectorControls>
|
|
432
|
-
<PanelBody title={ __( '
|
|
432
|
+
<PanelBody title={ __( 'Settings' ) }>
|
|
433
433
|
<TextControl
|
|
434
434
|
__nextHasNoMarginBottom
|
|
435
435
|
value={ label ? stripHTML( label ) : '' }
|
|
@@ -384,7 +384,7 @@ export default function NavigationSubmenuEdit( {
|
|
|
384
384
|
</BlockControls>
|
|
385
385
|
{ /* Warning, this duplicated in packages/block-library/src/navigation-link/edit.js */ }
|
|
386
386
|
<InspectorControls>
|
|
387
|
-
<PanelBody title={ __( '
|
|
387
|
+
<PanelBody title={ __( 'Settings' ) }>
|
|
388
388
|
<TextControl
|
|
389
389
|
__nextHasNoMarginBottom
|
|
390
390
|
value={ label || '' }
|
package/src/paragraph/block.json
CHANGED
|
@@ -97,7 +97,7 @@ export default function PostFeaturedImageEdit( {
|
|
|
97
97
|
} ) );
|
|
98
98
|
|
|
99
99
|
const blockProps = useBlockProps( {
|
|
100
|
-
style: { width, height, aspectRatio
|
|
100
|
+
style: { width, height, aspectRatio },
|
|
101
101
|
} );
|
|
102
102
|
const borderProps = useBorderProps( attributes );
|
|
103
103
|
|
|
@@ -92,7 +92,7 @@ function render_block_core_post_featured_image( $attributes, $content, $block )
|
|
|
92
92
|
if ( ! $height && ! $width && ! $aspect_ratio ) {
|
|
93
93
|
$wrapper_attributes = get_block_wrapper_attributes();
|
|
94
94
|
} else {
|
|
95
|
-
$wrapper_attributes = get_block_wrapper_attributes( array( 'style' => $aspect_ratio . $width . $height
|
|
95
|
+
$wrapper_attributes = get_block_wrapper_attributes( array( 'style' => $aspect_ratio . $width . $height ) );
|
|
96
96
|
}
|
|
97
97
|
return "<figure {$wrapper_attributes}>{$featured_image}</figure>";
|
|
98
98
|
}
|
package/src/post-terms/index.php
CHANGED
|
@@ -64,8 +64,8 @@ function render_block_core_post_terms( $attributes, $content, $block ) {
|
|
|
64
64
|
function register_block_core_post_terms() {
|
|
65
65
|
$taxonomies = get_taxonomies(
|
|
66
66
|
array(
|
|
67
|
-
'
|
|
68
|
-
'show_in_rest'
|
|
67
|
+
'publicly_queryable' => true,
|
|
68
|
+
'show_in_rest' => true,
|
|
69
69
|
),
|
|
70
70
|
'objects'
|
|
71
71
|
);
|