is enabled when updating to 3.11 * * @since 3.11 * * @param string $old_version Previous plugin version. * * @return void */ public function set_option_on_update( $old_version ) { if ( version_compare( $old_version, '3.11', '>=' ) ) { return; } $options = get_option( 'wp_rocket_settings', [] ); if ( 'local' === wp_get_environment_type() ) { $options['optimize_css_delivery'] = 0; $options['remove_unused_css'] = 0; $options['async_css'] = 0; } update_option( 'wp_rocket_settings', $options ); } /** * Updates safelist items for new SaaS compatibility * * @since 3.11.0.2 * * @param string $old_version Previous plugin version. * * @return void */ public function update_safelist_items( $old_version ) { if ( version_compare( $old_version, '3.11.0.2', '>=' ) ) { return; } $options = get_option( 'wp_rocket_settings', [] ); if ( empty( $options['remove_unused_css_safelist'] ) ) { return; } foreach ( $options['remove_unused_css_safelist'] as $key => $value ) { if ( str_contains( $value, '.css' ) ) { continue; } if ( str_starts_with( $value, '(' ) ) { continue; } $options['remove_unused_css_safelist'][ $key ] = '(.*)' . $value; } update_option( 'wp_rocket_settings', $options ); } /** * Display a notice on table missing. * * @return void */ public function display_no_table_notice() { if ( ! $this->can_display_notice() ) { return; } if ( $this->used_css->exists() ) { return; } // translators: %1$s = plugin name, %2$s = table name, %3$s = open tag, %4$s = closing tag. $main_message = esc_html__( '%1$s: Could not create the %2$s table in the database which is necessary for the Remove Unused CSS feature to work. Please check our %3$sdocumentation%4$s.', 'rocket' ); $rucss_database = $this->beacon->get_suggest( 'rucss_database' ); $message = sprintf( // translators: %1$s = plugin name, %2$s = table name, %3$s = open tag, %4$s = closing tag. $main_message, 'WP Rocket', $this->used_css->get_name(), '', '' ); rocket_notice_html( [ 'status' => 'error', 'dismissible' => '', 'message' => $message, 'id' => 'rocket-notice-rucss-missing-table', ] ); } } is enabled when updating to 3.11 * * @since 3.11 * * @param string $old_version Previous plugin version. * * @return void */ public function set_option_on_update( $old_version ) { if ( version_compare( $old_version, '3.11', '>=' ) ) { return; } $options = get_option( 'wp_rocket_settings', [] ); if ( 'local' === wp_get_environment_type() ) { $options['optimize_css_delivery'] = 0; $options['remove_unused_css'] = 0; $options['async_css'] = 0; } update_option( 'wp_rocket_settings', $options ); } /** * Updates safelist items for new SaaS compatibility * * @since 3.11.0.2 * * @param string $old_version Previous plugin version. * * @return void */ public function update_safelist_items( $old_version ) { if ( version_compare( $old_version, '3.11.0.2', '>=' ) ) { return; } $options = get_option( 'wp_rocket_settings', [] ); if ( empty( $options['remove_unused_css_safelist'] ) ) { return; } foreach ( $options['remove_unused_css_safelist'] as $key => $value ) { if ( str_contains( $value, '.css' ) ) { continue; } if ( str_starts_with( $value, '(' ) ) { continue; } $options['remove_unused_css_safelist'][ $key ] = '(.*)' . $value; } update_option( 'wp_rocket_settings', $options ); } /** * Display a notice on table missing. * * @return void */ public function display_no_table_notice() { if ( ! $this->can_display_notice() ) { return; } if ( $this->used_css->exists() ) { return; } // translators: %1$s = plugin name, %2$s = table name, %3$s = open tag, %4$s = closing tag. $main_message = esc_html__( '%1$s: Could not create the %2$s table in the database which is necessary for the Remove Unused CSS feature to work. Please check our %3$sdocumentation%4$s.', 'rocket' ); $rucss_database = $this->beacon->get_suggest( 'rucss_database' ); $message = sprintf( // translators: %1$s = plugin name, %2$s = table name, %3$s = open tag, %4$s = closing tag. $main_message, 'WP Rocket', $this->used_css->get_name(), '', '' ); rocket_notice_html( [ 'status' => 'error', 'dismissible' => '', 'message' => $message, 'id' => 'rocket-notice-rucss-missing-table', ] ); } }
Fatal error: Uncaught TypeError: WP_Rocket\Engine\Optimization\RUCSS\Admin\Subscriber::__construct(): Argument #1 ($settings) must be of type WP_Rocket\Engine\Optimization\RUCSS\Admin\Settings, string given in /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Engine/Optimization/RUCSS/Admin/Subscriber.php:48 Stack trace: #0 [internal function]: WP_Rocket\Engine\Optimization\RUCSS\Admin\Subscriber->__construct('WP_Rocket\\Engin...', Object(WP_Rocket\Engine\Optimization\RUCSS\Admin\Database), Object(WP_Rocket\Engine\Optimization\RUCSS\Controller\UsedCSS), Object(WP_Rocket\Engine\Common\JobManager\Queue\Queue)) #1 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Dependencies/League/Container/Definition/Definition.php(225): ReflectionClass->newInstanceArgs(Array) #2 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Dependencies/League/Container/Definition/Definition.php(181): WP_Rocket\Dependencies\League\Container\Definition\Definition->resolveClass('WP_Rocket\\Engin...') #3 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Dependencies/League/Container/Definition/Definition.php(160): WP_Rocket\Dependencies\League\Container\Definition\Definition->resolveNew() #4 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Dependencies/League/Container/Definition/DefinitionAggregate.php(79): WP_Rocket\Dependencies\League\Container\Definition\Definition->resolve() #5 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Dependencies/League/Container/Container.php(175): WP_Rocket\Dependencies\League\Container\Definition\DefinitionAggregate->resolve('rucss_admin_sub...') #6 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Dependencies/League/Container/Container.php(198): WP_Rocket\Dependencies\League\Container\Container->resolve('rucss_admin_sub...', false) #7 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Dependencies/League/Container/Container.php(118): WP_Rocket\Dependencies\League\Container\Container->resolve('rucss_admin_sub...') #8 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Plugin.php(168): WP_Rocket\Dependencies\League\Container\Container->get('rucss_admin_sub...') #9 /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/main.php(47): WP_Rocket\Plugin->load() #10 /htdocs/le-blog.fr/wp-includes/class-wp-hook.php(341): rocket_init('') #11 /htdocs/le-blog.fr/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters(NULL, Array) #12 /htdocs/le-blog.fr/wp-includes/plugin.php(522): WP_Hook->do_action(Array) #13 /htdocs/le-blog.fr/wp-settings.php(593): do_action('plugins_loaded') #14 /htdocs/le-blog.fr/wp-config.php(102): require_once('/htdocs/le-blog...') #15 /htdocs/le-blog.fr/wp-load.php(50): require_once('/htdocs/le-blog...') #16 /htdocs/le-blog.fr/wp-blog-header.php(13): require_once('/htdocs/le-blog...') #17 /htdocs/le-blog.fr/index.php(17): require('/htdocs/le-blog...') #18 {main} thrown in /htdocs/le-blog.fr/wp-content/plugins/wp-rocket/inc/Engine/Optimization/RUCSS/Admin/Subscriber.php on line 48