- 상태
- 해결됨
- 보고된 제품
- 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; }