r', $name, $attrs, $started_at, $length );
}
/**
* Returns a new block object for freeform HTML
*
* @internal
* @since 3.9.0
*
* @param string $inner_html HTML content of block.
* @return WP_Block_Parser_Block freeform block object.
*/
public function freeform( $inner_html ) {
return new WP_Block_Parser_Block( null, array(), array(), $inner_html, array( $inner_html ) );
}
/**
* Pushes a length of text from the input document
* to the output list as a freeform block.
*
* @internal
* @since 5.0.0
* @param null $length how many bytes of document text to output.
*/
public function add_freeform( $length = null ) {
$length = $length ? $length : strlen( $this->document ) - $this->offset;
if ( 0 === $length ) {
return;
}
$this->output[] = (array) $this->freeform( substr( $this->document, $this->offset, $length ) );
}
/**
* Given a block structure from memory pushes
* a new block to the output list.
*
* @internal
* @since 5.0.0
* @param WP_Block_Parser_Block $block The block to add to the output.
* @param int $token_start Byte offset into the document where the first token for the block starts.
* @param int $token_length Byte length of entire block from start of opening token to end of closing token.
* @param int|null $last_offset Last byte offset into document if continuing form earlier output.
*/
public function add_inner_block( WP_Block_Parser_Block $block, $token_start, $token_length, $last_offset = null ) {
$parent = $this->stack[ count( $this->stack ) - 1 ];
$parent->block->innerBlocks[] = (array) $block;
$html = substr( $this->document, $parent->prev_offset, $token_start - $parent->prev_offset );
if ( ! empty( $html ) ) {
$parent->block->innerHTML .= $html;
$parent->block->innerContent[] = $html;
}
$parent->block->innerContent[] = null;
$parent->prev_offset = $last_offset ? $last_offset : $token_start + $token_length;
}
/**
* Pushes the top block from the parsing stack to the output list.
*
* @internal
* @since 5.0.0
* @param int|null $end_offset byte offset into document for where we should stop sending text output as HTML.
*/
public function add_block_from_stack( $end_offset = null ) {
$stack_top = array_pop( $this->stack );
$prev_offset = $stack_top->prev_offset;
$html = isset( $end_offset )
? substr( $this->document, $prev_offset, $end_offset - $prev_offset )
: substr( $this->document, $prev_offset );
if ( ! empty( $html ) ) {
$stack_top->block->innerHTML .= $html;
$stack_top->block->innerContent[] = $html;
}
if ( isset( $stack_top->leading_html_start ) ) {
$this->output[] = (array) $this->freeform(
substr(
$this->document,
$stack_top->leading_html_start,
$stack_top->token_start - $stack_top->leading_html_start
)
);
}
$this->output[] = (array) $stack_top->block;
}
}
/**
* WP_Block_Parser_Block class.
*
* Required for backward compatibility in WordPress Core.
*/
require_once __DIR__ . '/class-wp-block-parser-block.php';
/**
* WP_Block_Parser_Frame class.
*
* Required for backward compatibility in WordPress Core.
*/
require_once __DIR__ . '/class-wp-block-parser-frame.php';
Fatal error: Uncaught Error: Class 'WP_Block_Parser' not found in /home/svecomtr/public_html/wp-includes/blocks.php:2225
Stack trace:
#0 /home/svecomtr/public_html/wp-includes/blocks.php(1820): parse_blocks('Dokan')
#1 /home/svecomtr/public_html/wp-includes/formatting.php(5200): filter_block_content('Dokan', Array, Array)
#2 /home/svecomtr/public_html/wp-includes/class-wp-hook.php(324): wp_pre_kses_block_attributes('Dokan', Array, Array)
#3 /home/svecomtr/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters('Dokan', Array)
#4 /home/svecomtr/public_html/wp-includes/kses.php(946): apply_filters('pre_kses', 'Dokan', Array, Array)
#5 /home/svecomtr/public_html/wp-includes/kses.php(754): wp_kses_hook('Dokan', Array, Array)
#6 /home/svecomtr/public_html/wp-admin/includes/plugin.php(188): wp_kses('Dokan', Array)
#7 /home/svecomtr/public_html/wp-admin/includes/plugin.php(114): _get_plugin_data_markup_translate('dokan-lite/doka...', Array, true, true)
#8 /home/svecomtr/public_html/wp-content/plugins/dokan-lite/vendor/ap in /home/svecomtr/public_html/wp-includes/blocks.php on line 2225