WPML
상태
해결됨
보고된 제품
Gravity Forms Multilingual 1.6.0
해결된 버전
Gravity Forms Multilingual 1.6.1

문제 개요

If you are using the Gravity Forms User Registration 애드온을 사용 중일 때 새 WordPress 사용자를 추가하려고 하면 다음 오류가 발생합니다:

PHP Fatal error: Uncaught Error: Class ‘GFSignup’ not found in /wp-content/plugins/gravityforms-multilingual/classes/compatibility/user_registration/Hooks.php:46

임시 해결 방법

진행하기 전에 사이트를 전체 백업하세요.


  1. /wp-content/plugins/gravityforms-multilingual/classes/compatibility/user_registration/Hooks.php 파일을 여세요.

  2. 42번째 줄을 찾으세요.

  3. 다음 코드를:
        public function onActivation( $meta, WP_User $user, $update ) {
        	if ( ! $update ) {
        		$key    = rgpost( 'key' ); // From ajax.
        		$key    = $key ?: rgpost( 'item' ); // From form submission.
        		$signup = GFSignup::get( $key );
        		if ( $signup instanceof GFSignup && $signup->meta['email'] === $user->user_email ) {
        			$meta['icl_admin_language'] = $signup->meta['icl_admin_language'];
        			$meta['locale']             = $signup->meta['icl_admin_locale'];
        		}
        	}
        	return $meta;
        }


  4. 다음으로 교체하세요:
        public function onActivation( $meta, WP_User $user, $update ) {
        	if ( ! $update && class_exists( 'GFSignup' ) ) {
        		$key    = rgpost( 'key' ); // From ajax.
        		$key    = $key ?: rgpost( 'item' ); // From form submission.
        		$signup = GFSignup::get( $key );
        		if ( $signup instanceof GFSignup && $signup->meta['email'] === $user->user_email ) {
        			$meta['icl_admin_language'] = $signup->meta['icl_admin_language'];
        			$meta['locale']             = $signup->meta['icl_admin_locale'];
        		}
        	}
        	return $meta;
        }

알려진 모든 문제 →