WPML

문제 개요

편집자나 사용자 정의 역할과 같이 관리자가 아닌 사용자가 고급 번역 에디터(ATE) 작업 동기화와 관련된 특정 WPML 기능에 접근할 때 브라우저 콘솔에 403 Forbidden 오류가 발생합니다. 이 오류는 브라우저 개발자 도구의 콘솔 탭을 검사할 때 확인할 수 있습니다.

이 문제는 사이트나 번역에 영향을 미치지 않으므로, 계속해서 WPML을 사용하고 웹사이트를 번역할 수 있습니다.

임시 해결 방법

진행하기 전에 사이트의 전체 백업을 완료했는지 확인하세요.

  • …/wp-content/plugins/sitepress-multilingual-cms/classes/ATE/Loader.php 파일을 여세요.
  • 다음 코드를:
    Hooks::onAction( 'wp_loaded' )
         ->then( [ self::class, 'getData' ] )
         ->then( $maybeLoadStatusBarAndATEConsole )
         ->then( Resources::enqueueApp( 'ate-jobs-sync' ) )
         ->then( Fns::always( make( \WPML_TM_Scripts_Factory::class ) ) )
         ->then( invoke( 'localize_script' )->with( 'wpml-ate-jobs-sync-ui' ) );
  • 다음과 같이 변경하세요:
    if (current_user_can('translate') || current_user_can('manage_options') || current_user_can('manage_translations')) {
    	Hooks::onAction( 'wp_loaded' )
    	     ->then( [ self::class, 'getData' ] )
    	     ->then( $maybeLoadStatusBarAndATEConsole )
    	     ->then( Resources::enqueueApp( 'ate-jobs-sync' ) )
    	     ->then( Fns::always( make( \WPML_TM_Scripts_Factory::class ) ) )
    	     ->then( invoke( 'localize_script' )->with( 'wpml-ate-jobs-sync-ui' ) );
    }

모든 알려진 문제