mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-07-01 07:40:07 +00:00
Help/About: WordPress 5.0 About Page.
The About page describes all the great changes in WordPress 5.0. Highlights: - Warn users of Gutenberg plugin of its deactivation upon 5.0 upgrade. - Added illustrations to the Four Freedoms page. - Include a link to wporg user’s plugin favorites as a way to display only the classic plugin as a suggestion for install. - Detail the Classic Editor plugin and the support timeline. Props pixelverbieger, ocean90, karmatosed, pento, boemedia, lonelyvegan, sami.keijonen, TimothyBlynJacobs, xkon, afercia, laurelfulford, joostdevalk, ipstenu, matveb, joen, tinkerbelly, chanthaboune, kjellr, alexislloyd, melchoyce, mcsf, courtney0burton, Otto42, cathibosco, tobifjellner, helen, audrasjb, antpb, jjj, elrae, desrosj, azaozz, joemcgill, skithund, gziolo. Merges [43913], [43921-43922], [43937-43938], [43946-43947], [43952-43953], [43967-43969] into trunk. Fixes #45178. git-svn-id: https://develop.svn.wordpress.org/trunk@44264 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -63,10 +63,10 @@ class WP_Block_Parser_Block {
|
||||
public $innerContent;
|
||||
|
||||
function __construct( $name, $attrs, $innerBlocks, $innerHTML, $innerContent ) {
|
||||
$this->blockName = $name;
|
||||
$this->attrs = $attrs;
|
||||
$this->innerBlocks = $innerBlocks;
|
||||
$this->innerHTML = $innerHTML;
|
||||
$this->blockName = $name;
|
||||
$this->attrs = $attrs;
|
||||
$this->innerBlocks = $innerBlocks;
|
||||
$this->innerHTML = $innerHTML;
|
||||
$this->innerContent = $innerContent;
|
||||
}
|
||||
}
|
||||
@@ -269,17 +269,15 @@ class WP_Block_Parser {
|
||||
*/
|
||||
if ( 0 === $stack_depth ) {
|
||||
if ( isset( $leading_html_start ) ) {
|
||||
$this->output[] = (array) self::freeform(
|
||||
substr(
|
||||
$this->document,
|
||||
$leading_html_start,
|
||||
$start_offset - $leading_html_start
|
||||
)
|
||||
);
|
||||
$this->output[] = (array) self::freeform( substr(
|
||||
$this->document,
|
||||
$leading_html_start,
|
||||
$start_offset - $leading_html_start
|
||||
) );
|
||||
}
|
||||
|
||||
$this->output[] = (array) new WP_Block_Parser_Block( $block_name, $attrs, array(), '', array() );
|
||||
$this->offset = $start_offset + $token_length;
|
||||
$this->offset = $start_offset + $token_length;
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -294,16 +292,13 @@ class WP_Block_Parser {
|
||||
|
||||
case 'block-opener':
|
||||
// track all newly-opened blocks on the stack
|
||||
array_push(
|
||||
$this->stack,
|
||||
new WP_Block_Parser_Frame(
|
||||
new WP_Block_Parser_Block( $block_name, $attrs, array(), '', array() ),
|
||||
$start_offset,
|
||||
$token_length,
|
||||
$start_offset + $token_length,
|
||||
$leading_html_start
|
||||
)
|
||||
);
|
||||
array_push( $this->stack, new WP_Block_Parser_Frame(
|
||||
new WP_Block_Parser_Block( $block_name, $attrs, array(), '', array() ),
|
||||
$start_offset,
|
||||
$token_length,
|
||||
$start_offset + $token_length,
|
||||
$leading_html_start
|
||||
) );
|
||||
$this->offset = $start_offset + $token_length;
|
||||
return true;
|
||||
|
||||
@@ -334,11 +329,11 @@ class WP_Block_Parser {
|
||||
* otherwise we're nested and we have to close out the current
|
||||
* block and add it as a new innerBlock to the parent
|
||||
*/
|
||||
$stack_top = array_pop( $this->stack );
|
||||
$html = substr( $this->document, $stack_top->prev_offset, $start_offset - $stack_top->prev_offset );
|
||||
$stack_top->block->innerHTML .= $html;
|
||||
$stack_top = array_pop( $this->stack );
|
||||
$html = substr( $this->document, $stack_top->prev_offset, $start_offset - $stack_top->prev_offset );
|
||||
$stack_top->block->innerHTML .= $html;
|
||||
$stack_top->block->innerContent[] = $html;
|
||||
$stack_top->prev_offset = $start_offset + $token_length;
|
||||
$stack_top->prev_offset = $start_offset + $token_length;
|
||||
|
||||
$this->add_inner_block(
|
||||
$stack_top->block,
|
||||
@@ -390,22 +385,22 @@ class WP_Block_Parser {
|
||||
return array( 'no-more-tokens', null, null, null, null );
|
||||
}
|
||||
|
||||
list( $match, $started_at ) = $matches[0];
|
||||
list( $match, $started_at ) = $matches[ 0 ];
|
||||
|
||||
$length = strlen( $match );
|
||||
$is_closer = isset( $matches['closer'] ) && -1 !== $matches['closer'][1];
|
||||
$is_void = isset( $matches['void'] ) && -1 !== $matches['void'][1];
|
||||
$namespace = $matches['namespace'];
|
||||
$namespace = ( isset( $namespace ) && -1 !== $namespace[1] ) ? $namespace[0] : 'core/';
|
||||
$name = $namespace . $matches['name'][0];
|
||||
$has_attrs = isset( $matches['attrs'] ) && -1 !== $matches['attrs'][1];
|
||||
$is_closer = isset( $matches[ 'closer' ] ) && -1 !== $matches[ 'closer' ][ 1 ];
|
||||
$is_void = isset( $matches[ 'void' ] ) && -1 !== $matches[ 'void' ][ 1 ];
|
||||
$namespace = $matches[ 'namespace' ];
|
||||
$namespace = ( isset( $namespace ) && -1 !== $namespace[ 1 ] ) ? $namespace[ 0 ] : 'core/';
|
||||
$name = $namespace . $matches[ 'name' ][ 0 ];
|
||||
$has_attrs = isset( $matches[ 'attrs' ] ) && -1 !== $matches[ 'attrs' ][ 1 ];
|
||||
|
||||
/*
|
||||
* Fun fact! It's not trivial in PHP to create "an empty associative array" since all arrays
|
||||
* are associative arrays. If we use `array()` we get a JSON `[]`
|
||||
*/
|
||||
$attrs = $has_attrs
|
||||
? json_decode( $matches['attrs'][0], /* as-associative */ true )
|
||||
? json_decode( $matches[ 'attrs' ][ 0 ], /* as-associative */ true )
|
||||
: $this->empty_attrs;
|
||||
|
||||
/*
|
||||
@@ -470,17 +465,17 @@ class WP_Block_Parser {
|
||||
* @param int|null $last_offset last byte offset into document if continuing form earlier output
|
||||
*/
|
||||
function add_inner_block( WP_Block_Parser_Block $block, $token_start, $token_length, $last_offset = null ) {
|
||||
$parent = $this->stack[ count( $this->stack ) - 1 ];
|
||||
$parent = $this->stack[ count( $this->stack ) - 1 ];
|
||||
$parent->block->innerBlocks[] = (array) $block;
|
||||
$html = substr( $this->document, $parent->prev_offset, $token_start - $parent->prev_offset );
|
||||
$html = substr( $this->document, $parent->prev_offset, $token_start - $parent->prev_offset );
|
||||
|
||||
if ( ! empty( $html ) ) {
|
||||
$parent->block->innerHTML .= $html;
|
||||
$parent->block->innerHTML .= $html;
|
||||
$parent->block->innerContent[] = $html;
|
||||
}
|
||||
|
||||
$parent->block->innerContent[] = null;
|
||||
$parent->prev_offset = $last_offset ? $last_offset : $token_start + $token_length;
|
||||
$parent->prev_offset = $last_offset ? $last_offset : $token_start + $token_length;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -499,18 +494,16 @@ class WP_Block_Parser {
|
||||
: substr( $this->document, $prev_offset );
|
||||
|
||||
if ( ! empty( $html ) ) {
|
||||
$stack_top->block->innerHTML .= $html;
|
||||
$stack_top->block->innerHTML .= $html;
|
||||
$stack_top->block->innerContent[] = $html;
|
||||
}
|
||||
|
||||
if ( isset( $stack_top->leading_html_start ) ) {
|
||||
$this->output[] = (array) self::freeform(
|
||||
substr(
|
||||
$this->document,
|
||||
$stack_top->leading_html_start,
|
||||
$stack_top->token_start - $stack_top->leading_html_start
|
||||
)
|
||||
);
|
||||
$this->output[] = (array) self::freeform( substr(
|
||||
$this->document,
|
||||
$stack_top->leading_html_start,
|
||||
$stack_top->token_start - $stack_top->leading_html_start
|
||||
) );
|
||||
}
|
||||
|
||||
$this->output[] = (array) $stack_top->block;
|
||||
|
||||
Reference in New Issue
Block a user