- สถานะ
- เปิด
- รายงานสำหรับ
- WPML Multilingual CMS 4.5.9
- แท็กหัวข้อ
- Bug
ภาพรวมของปัญหา
ผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบ เช่น บรรณาธิการหรือบทบาทที่กำหนดเอง จะพบข้อผิดพลาด 403 Forbidden ในคอนโซลของเบราว์เซอร์เมื่อเข้าถึงฟังก์ชันการทำงานบางอย่างของ WPML ที่เกี่ยวข้องกับการซิงโครไนซ์งานแปลของตัวแก้ไขการแปลขั้นสูง (ATE) ข้อผิดพลาดนี้จะเห็นได้ชัดเมื่อตรวจสอบแท็บคอนโซลในเครื่องมือสำหรับนักพัฒนาของเบราว์เซอร์
โปรดทราบว่าปัญหานี้จะไม่ส่งผลกระทบต่อเว็บไซต์หรือการแปลของคุณ คุณสามารถใช้งาน 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' ) ); }