WPML

Обзор проблемы

Использование WordPress версии ниже 5.9.0 с WPML 4.6.9 может привести к фатальной ошибке:

Uncaught Error: Call to undefined function WPMLBlockEditor::wp_enqueue_block_style() in /wp-content/plugins/sitepress-multilingual-cms/classes/block-editor/Loader.php:97

Обходное решение

Эта проблема исправлена в WPML 4.6.10. Обновление решает эту проблему на Вашем сайте, поэтому это обходное решение понадобится Вам, только если Вы пока не можете выполнить обновление.

Вы можете вернуться к версии WPML 4.6.8, попробовать бета-версию WPML V4.6.10 (открывается в новой вкладке) или воспользоваться приведенными ниже инструкциями для исправления кода до выхода окончательного исправления. Прежде чем вносить изменения в код, убедитесь, что у Вас есть полная резервная копия Вашего сайта.

Перейдите к: wp-content/plugins/sitepress-multilingual-cms/classes/block-editor/Loader.php, найдите метод \WPML\BlockEditor\Loader::maybeEnqueueNavigationBlockStyles и замените его на:

public function maybeEnqueueNavigationBlockStyles() {
	global $wp_version;
	if ( version_compare($wp_version, '5.9.0' ) >= 0) {
		if ( ! wp_style_is( 'wp-block-navigation', 'enqueued' ) || ! wp_style_is( 'wp-block-navigation', 'queue' ) ) {
			wp_enqueue_block_style( LanguageSwitcher::BLOCK_LANGUAGE_SWITCHER, [
				'handle' => 'wp-block-navigation'
			] );
		}
	}
}

Все известные проблемы

Всё ещё сталкиваетесь с этой проблемой?

Если обновление не устраняет проблему, отправьте запрос в поддержку, и мы разберемся в ней вместе с Вами.