WPML

問題の概要

5.9.0未満のバージョンのWordPressと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'
			] );
		}
	}
}

すべての既知の問題

まだこの問題が発生しますか?

アップデートしても問題が解決しない場合は、サポートのご質問をお寄せください。一緒に調査いたします。