- Status
- Offen
- Gemeldet für
- WPML Multilingual CMS 4.5.9
- Themen-Tags
- Bug
Übersicht über das Problem
Nicht-Admin-Benutzer, wie Redakteure oder benutzerdefinierte Rollen, erhalten in der Browser-Konsole einen 403 Forbidden-Fehler, wenn sie auf bestimmte WPML-Funktionen zugreifen, die mit der Synchronisierung von Übersetzungsaufträgen des Erweiterten Übersetzungs-Editors (ATE) zusammenhängen. Dieser Fehler ist ersichtlich, wenn der Konsolen-Tab in den Entwicklertools des Browsers überprüft wird.
Beachten Sie, dass dieses Problem Ihre Website oder deren Übersetzungen nicht beeinträchtigt. Sie können WPML weiterhin verwenden und Ihre Website übersetzen.
Problemumgehung
Bitte stellen Sie sicher, dass Sie über ein vollständiges Backup Ihrer Website verfügen, bevor Sie fortfahren.
- Öffnen Sie die Datei …/wp-content/plugins/sitepress-multilingual-cms/classes/ATE/Loader.php.
- Ersetzen Sie:
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' ) );
- Durch:
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' ) ); }