WPML
Status
Offen
Themen-Tags
Bug

Übersicht über das Problem

Im Tab „Übersetzer“ auf der Seite unter WPML > Übersetzungsmanagement gibt es eine Option, einen Übersetzungsmanager hinzuzufügen, wodurch ein Suchfeld geöffnet wird. In einigen Szenarien liefert die Suche nach gültigen Benutzern keine Benutzer zur Auswahl.

Dies tritt auf, wenn es mehrere Rollen mit der erforderlichen Mindestberechtigung gibt, wie es beispielsweise auf einer WooCommerce-Website der Fall wäre, wo sowohl die Rolle des Shop-Managers als auch die des Core-Redakteurs die erforderliche Berechtigung haben.

Problemumgehung

Es gibt keine einfache Problemumgehung, die nicht die Bearbeitung einer WPML-Plugin-Datei erfordert.

Sie können die Datei plugins/sitepress-multilingual-cms/classes/user/class-wpml-translation-roles-records.php bearbeiten.

Suchen Sie diese Zeile (ungefähr Zeile 144):

$preparedUserQuery .= $this->wpdb->prepare( " AND c.meta_value LIKE %s", "%{$required_wp_role}%" );

und ändern Sie das AND wie folgt in OR:

$preparedUserQuery .= $this->wpdb->prepare( " OR c.meta_value LIKE %s", "%{$required_wp_role}%" );

Suchen Sie dann diese Zeile (ungefähr Zeile 168):

$users      = $this->wpdb->get_col( $preparedUserQuery );

und fügen Sie dann unmittelbar danach eine zweite Zeile wie folgt an:

$users      = $this->wpdb->get_col( $preparedUserQuery );
$users = array_unique( $users );

Stellen Sie wie immer bei solchen Änderungen sicher, dass Sie über ein aktuelles Backup verfügen, bevor Sie fortfahren.

Alle bekannten Probleme →