Commit Graph

10 Commits

Author SHA1 Message Date
youknowriad c749dc382f Block Editor: Clarify PHP Docs of the block_version function.
Clarify the return value.

Props desrosj, mukesh27.
Fixes #45342.

Built from https://develop.svn.wordpress.org/branches/5.0@43924


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43756 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-11-21 19:39:49 +00:00
Andrew Ozz ca2055af34 Block Editor: A little cleanup to `render_block()`. Always normalize `$block['attrs']` to array in `'render_block'` filter.
See #45145.
Built from https://develop.svn.wordpress.org/branches/5.0@43888


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43717 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-11-12 10:03:48 +00:00
Gary Pendergast 54368e50b6 Block Editor: Update `@wordpress` dependencies to the latest version.
Changes of note:
- Includes the new Annotations API package.
- `wp-polyfill-ecmascript.js` is renamed to `wp-polyfill.js`.
- `strip_dynamic_blocks()` has been removed in favour of `excerpt_remove_blocks()`.
- The PHP block parser is now syncing from the `block-serialization-default-parser` package.
- `do_blocks()` uses the new parser.
- The `do_block` filter has been removed from `do_blocks()`, in favour of a `render_block` filter in `render_block()`.

See #45145, #45190, #45264, #45282.


Built from https://develop.svn.wordpress.org/branches/5.0@43884


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43713 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-11-12 02:27:57 +00:00
Gary Pendergast fdf428e44f Tests: Fix tests broken in PHP 5.x after [43879].
See #45290.


Built from https://develop.svn.wordpress.org/branches/5.0@43883


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-11-09 09:44:49 +00:00
Gary Pendergast 7c19654f33 Formatting: Ensure `wpautop()` isn't run on content generated from blocks.
As `do_blocks()` is run before `wpautop()` in `the_content` filter, we can remove in a Just In Time fashion, before that filter is run.

After `wpautop()`s original priority has passed, we can re-add it in a Just Too Late fashion, to ensure it's available if `the_content` filter is run multiple times on a page load.

Props pento, nerrad.
Fixes #45290.


Built from https://develop.svn.wordpress.org/branches/5.0@43879


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43708 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-11-09 08:29:47 +00:00
danielbachhuber 58ea8c82e4 REST API: Include `block_version` on Post `content` object.
The `block_version` denotes which version of Blocks the `post_content` contains. Introduces new `block_version()` function for versioning Blocks.

Props danielbachhuber, birgire.
Fixes #43887.

Built from https://develop.svn.wordpress.org/branches/5.0@43770


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43599 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-19 17:58:39 +00:00
Gary Pendergast 798c2581b1 Blocks: Parse blocks when displaying posts.
Posts containing blocks are now correctly handled when displaying on the front end, including dynamic blocks and nested blocks.

See #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43752


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43581 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 11:54:26 +00:00
Gary Pendergast f7d01b4e70 Blocks: Introduce the block parser.
The `WP_Block_Parser` class, and the accompanying `parse_blocks()` helper function, can be used to parse an array of blocks out of a content string.

`WP_Block_Parser` is copied from the `@wordpress/block-serialization-default-parser` package. To ensure it stays in sync with the JavaScript parser, changes should be implemented in the package first, then the package version should be upgraded to include the changes.

See #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43751


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43580 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 04:40:27 +00:00
Gary Pendergast 28310289bd Blocks: Introduce `register_block_type()`, `unregister_block_type()`, and `get_dynamic_blocks()` functions.
These helper functions allow easy access to the global block registry.

See #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43743


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43572 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 01:53:26 +00:00
Gary Pendergast 22840639e8 Blocks: Introduce `WP_Block_Type` and `WP_Block_Type_Registry` classes.
These are the foundational classes allowing blocks to be registered and used throughout WordPress.

This commit also includes the `has_block()` and `has_blocks()` functions, which are required for unit testing these classes.

Props adamsilverstein, danielbachhuber, desrosj.
See #45097, #45109.


Built from https://develop.svn.wordpress.org/branches/5.0@43742


git-svn-id: http://core.svn.wordpress.org/branches/5.0@43571 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-10-18 01:31:26 +00:00