Automattic\WooCommerce\EmailEditor\Engine\Renderer\ContentRenderer
Content_Renderer::render_block
Renders block Translates block's HTML to HTML suitable for email clients. The method is intended as a callback for render_block
Метод класса: Content_Renderer{}
Хуков нет.
Возвращает
string.
Использование
$Content_Renderer = new Content_Renderer(); $Content_Renderer->render_block( $block_content, $parsed_block ): string;
- $block_content(строка) (обязательный)
- Block content.
- $parsed_block(массив) (обязательный)
- Parsed block.
Код Content_Renderer::render_block() Content Renderer::render block WC 11.2.1
public function render_block( string $block_content, array $parsed_block ): string {
$context = $this->get_rendering_context();
$block_type = $this->block_type_registry->get_registered( $parsed_block['blockName'] );
$result = null;
try {
if ( $block_type && isset( $block_type->render_email_callback ) && is_callable( $block_type->render_email_callback ) ) {
$result = call_user_func( $block_type->render_email_callback, $block_content, $parsed_block, $context );
}
} catch ( \Exception $error ) {
$this->logger->error(
'Error thrown while rendering block.',
array(
'exception' => $error,
'block_name' => $parsed_block['blockName'],
'parsed_block' => $parsed_block,
'message' => $error->getMessage(),
)
);
// Returning the original content.
return $block_content;
}
if ( null === $result ) {
$result = $this->fallback_renderer->render( $block_content, $parsed_block, $context );
}
return $this->add_root_horizontal_padding( $result, $parsed_block['email_attrs'] ?? array() );
}