WPML
Statut
Résolu
Signalé pour
WPML Multilingual CMS 4.6.7
Résolu dans
WPML 4.9
Étiquettes de sujet
Bug, Performance

Aperçu de l’anomalie

Si vous utilisez WPML Traduction de chaînes sur un site WordPress avec un nombre important d’utilisateurs, vous pouvez constater un délai important lors de l’accès à la page WPML > Traduction de chaînes. Ce problème provient d’une requête spécifique qui devient de plus en plus lente à mesure que le nombre d’utilisateurs augmente.

Solution de contournement

Assurez-vous d’avoir une sauvegarde complète de votre site avant de continuer.


  • Ouvrez le fichier …/wp-content/plugins/sitepress-multilingual-cms/classes/user/class-wpml-translation-roles-records.php.

  • Recherchez la ligne 127.

  • Remplacez :
    		$preparedUserQuery = $this->wpdb->prepare(
    			"SELECT u.id FROM {$this->wpdb->users} u INNER JOIN {$this->wpdb->usermeta} c ON c.user_id=u.ID AND CAST(c.meta_key AS BINARY)=%s AND c.meta_value {$compare} %s",
    			"{$this->wpdb->prefix}capabilities",
    			"%" . $this->get_capability() . "%"
    		);


  • Par :
    		$preparedUserQuery = $this->wpdb->prepare(
    			"SELECT u.id FROM {$this->wpdb->users} u INNER JOIN {$this->wpdb->usermeta} c ON c.user_id=u.ID AND c.meta_key=%s AND c.meta_value {$compare} %s",
    			"{$this->wpdb->prefix}capabilities",
    			"%" . $this->get_capability() . "%"
    		);

Toutes les anomalies connues →