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

알려진 모든 문제 →