- ステータス
- 解決済み
- 報告対象
- WPML Multilingual CMS 4.5.10
- 解決されたバージョン
- 4.5.12
- トピックタグ
- Bug, Compatibility
問題の概要
サイトを翻訳中で、サーバーがPHP8+を使用している場合、ページを保存すると500サーバーエラーが発生します。
デバッグ情報を確認すると、次のエラーが見つかります:
022/09/16 10:57:12 [error] 2388#2388: *56 FastCGI sent in stderr: ”PHP message: PHP Fatal error: Uncaught ValueError: mb_strpos(): Argument #3 ($offset) must be contained in argument #1 ($haystack) in …/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/functions.php:283Stack trace:
#0 [internal function]: mb_strpos('<a href=”https:…', ‘wp-block’, 126)
#1 …/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/functions.php(283): call_user_func_array('mb_strpos’, Array)
#2 [internal function]: WPML\FP\{closure}('wp-block’, '<a href=”https:…', 126)
#3 …/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/functions.php(152): call_user_func_array(Object(Closure), Array)
#4 [internal function]: WPML\FP\{closure}('wp-block’, '<a href=”https:…', 126)
#5 …/wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/fp/core/functions.php(48): call_user_func_array(Object(Closure), Array)
回避策
開発チームはこの問題を認識しており、現在対応中です。それまでの間、以下のいずれかの方法を実行してください。
- WPML Media Translationプラグインを使用していない場合は、無効にしてください。 または
- テーマのfunctions.phpファイルに以下のコードを追加してください。
add_filter('wpml_media_content_for_media_usage', '__return_false');または
- 可能であれば、PHPのバージョンをPHP 7.4 にダウングレードしてください。