WPML
状态
未解决
主题标签
Bug

问题概述

在 WPML > 翻译管理页面的“译者”选项卡中,有一个添加翻译管理员的选项,该选项会弹出一个搜索框。在某些情况下,搜索有效用户时不会返回任何可供选择的用户。

当存在多个具有最低所需权限的角色时就会发生这种情况,例如在 WooCommerce 站点上,商店经理和核心编辑角色都具有所需权限。

临时解决方法

除了编辑 WPML 插件文件之外,没有其他简单的临时解决方法。

您可以编辑文件 plugins/sitepress-multilingual-cms/classes/user/class-wpml-translation-roles-records.php。

找到此行(大约在第 144 行):

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

并将 AND 更改为 OR,如下所示:

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

然后找到此行(大约在第 168 行):

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

然后紧接着在后面添加第二行,如下所示:

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

与往常一样,在进行任何此类更改之前,请务必确保拥有最新的备份。

所有已知问题 →