- ステータス
- 解決済み
- 報告対象
- Advanced Custom Fields Multilingual 2.0.5
- 解決されたバージョン
- Advanced Custom Fields Multilingual 2.1.0
- 関連するプラグイン/テーマ
- Advanced Custom Fields (ACF)
- トピックタグ
- Bug, Compatibility
問題の概要
WPMLとAdvanced Custom Fieldsプラグインを使用している場合、次のようなPHPの致命的なエラーが発生する場合があります。
PHP Fatal error: Uncaught TypeError: md5(): Argument #1 ($string) must be of type string, array given in .../wp-content/plugins/acfml/classes/Strings/Package.php:97
回避策
続行する前に、サイトの完全なバックアップを取得していることを確認してください。
- …/wp-content/plugins/acfml/classes/Strings/Traversable/Field.phpファイルを開きます。
- 24行目を探します。
- 次を変更します:
protected function transform( Transformer $transformer, $value, $config ) { if ( is_array( $value ) ) { foreach ( $value as $key => $label ) { $value[ $key ] = $transformer->transform( $label, $config ); } } else { $value = $transformer->transform( $value, $config ); } return $value; } - 次のように変更します:
protected function transform( Transformer $transformer, $value, $config ) { if ( is_array( $value ) ) { foreach ( $value as $key => $label ) { if ( is_string( $label ) ) { $value[ $key ] = $transformer->transform( $label, $config ); } } } else { $value = $transformer->transform( $value, $config ); } return $value; }