.Prohibited -- We need to set the post for correct rendering the blocks. } private function reset(): void { remove_filter( 'render_block', array( $this, 'render_block' ) ); remove_filter( 'block_parser_class', array( $this, 'block_parser' ) ); remove_filter( 'woocommerce_email_blocks_renderer_parsed_blocks', array( $this, 'preprocess_parsed_blocks' ) ); // Restore globals to their original values. global $_wp_current_template_content, $_wp_current_template_id, $wp_query, $post; $_wp_current_template_content = $this->backup_template_content; $_wp_current_template_id = $this->backup_template_id; $wp_query = $this->backup_query; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited -- Restoring of the query. $post = $this->backup_post; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited -- Restoring of the post. } private function inline_styles( $html, WP_Post $post, $template = null ) { $styles = (string) file_get_contents( __DIR__ . '/' . self::CONTENT_STYLES_FILE ); $styles .= (string) file_get_contents( __DIR__ . '/../../content-shared.css' ); // Apply default contentWidth to constrained blocks. $layout = $this->theme_controller->get_layout_settings(); $styles .= sprintf( ' .is-layout-constrained > *:not(.alignleft):not(.alignright):not(.alignfull) { max-width: %1$s; margin-left: auto !important; margin-right: auto !important; } .is-layout-constrained > .alignwide { max-width: %2$s; margin-left: auto !important; margin-right: auto !important; } ', $layout['contentSize'], $layout['wideSize'] ); // Get styles from theme. $styles .= $this->theme_controller->get_stylesheet_for_rendering( $post, $template ); $block_support_styles = $this->theme_controller->get_stylesheet_from_context( 'block-supports', array() ); // Get styles from block-supports stylesheet. This includes rules such as layout (contentWidth) that some blocks use. // @see https://github.com/WordPress/WordPress/blob/3c5da9c74344aaf5bf8097f2e2c6a1a781600e03/wp-includes/script-loader.php#L3134 // @internal :where is not supported by emogrifier, so we need to replace it with *. $block_support_styles = str_replace( ':where(:not(.alignleft):not(.alignright):not(.alignfull))', '*:not(.alignleft):not(.alignright):not(.alignfull)', $block_support_styles ); $block_support_styles = preg_replace( '/group-is-layout-(\d+) >/', 'group-is-layout-$1 > tbody tr td >', $block_support_styles ); $styles .= $block_support_styles; $styles = ''; return $this->css_inliner->from_html( $styles . $html )->inline_css()->render(); } }
Fatal error: Uncaught Error: Class "Automattic\WooCommerce\EmailEditor\Engine\Renderer\ContentRenderer\Content_Renderer" not found in /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-email-editor-container.php:173 Stack trace: #0 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-container.php(24): Automattic\WooCommerce\EmailEditor\Email_Editor_Container::Automattic\WooCommerce\EmailEditor\{closure}(Object(Automattic\WooCommerce\EmailEditor\Container)) #1 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-email-editor-container.php(185): Automattic\WooCommerce\EmailEditor\Container->get('Automattic\\WooC...') #2 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-container.php(24): Automattic\WooCommerce\EmailEditor\Email_Editor_Container::Automattic\WooCommerce\EmailEditor\{closure}(Object(Automattic\WooCommerce\EmailEditor\Container)) #3 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-email-editor-container.php(213): Automattic\WooCommerce\EmailEditor\Container->get('Automattic\\WooC...') #4 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-container.php(24): Automattic\WooCommerce\EmailEditor\Email_Editor_Container::Automattic\WooCommerce\EmailEditor\{closure}(Object(Automattic\WooCommerce\EmailEditor\Container)) #5 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-email-editor-container.php(251): Automattic\WooCommerce\EmailEditor\Container->get('Automattic\\WooC...') #6 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-container.php(24): Automattic\WooCommerce\EmailEditor\Email_Editor_Container::Automattic\WooCommerce\EmailEditor\{closure}(Object(Automattic\WooCommerce\EmailEditor\Container)) #7 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-email-editor-container.php(264): Automattic\WooCommerce\EmailEditor\Container->get('Automattic\\WooC...') #8 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-container.php(24): Automattic\WooCommerce\EmailEditor\Email_Editor_Container::Automattic\WooCommerce\EmailEditor\{closure}(Object(Automattic\WooCommerce\EmailEditor\Container)) #9 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-email-editor-container.php(36): Automattic\WooCommerce\EmailEditor\Container->get('Automattic\\WooC...') #10 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/mailpoet_initializer.php(90): Automattic\WooCommerce\EmailEditor\Email_Editor_Container::init() #11 /htdocs/surfshop.ma/wp-content/plugins/mailpoet/mailpoet.php(179): require_once('/htdocs/surfsho...') #12 /htdocs/surfshop.ma/wp-settings.php(526): include_once('/htdocs/surfsho...') #13 /htdocs/surfshop.ma/wp-config.php(98): require_once('/htdocs/surfsho...') #14 /htdocs/surfshop.ma/wp-load.php(50): require_once('/htdocs/surfsho...') #15 /htdocs/surfshop.ma/wp-blog-header.php(13): require_once('/htdocs/surfsho...') #16 /htdocs/surfshop.ma/index.php(17): require('/htdocs/surfsho...') #17 {main} thrown in /htdocs/surfshop.ma/wp-content/plugins/mailpoet/vendor/woocommerce/email-editor/src/class-email-editor-container.php on line 173