- 상태
- 미해결
- 보고된 제품
- WPML Multilingual CMS 4.5.9
- 주제 태그
- Bug
문제 개요
편집자나 사용자 정의 역할과 같이 관리자가 아닌 사용자가 고급 번역 에디터(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' ) ); }