WPML
Trạng thái
Đang mở
Thẻ chủ đề
Bug

Tổng quan về lỗi

Trong tab Người dịch của trang tại WPML > Quản lý dịch thuật có một tùy chọn để thêm Người quản lý dịch thuật, tùy chọn này sẽ mở ra một hộp tìm kiếm. Trong một số trường hợp, việc tìm kiếm người dùng hợp lệ không trả về bất kỳ người dùng nào để có thể chọn.

Điều này xảy ra khi có nhiều vai trò có quyền tối thiểu bắt buộc, ví dụ như trên một trang web WooCommerce, nơi cả vai trò Quản lý cửa hàng và Biên tập viên lõi đều có quyền bắt buộc.

Giải pháp tạm thời

Không có giải pháp tạm thời đơn giản nào mà không cần chỉnh sửa tệp plugin WPML.

Bạn có thể chỉnh sửa tệp plugins/sitepress-multilingual-cms/classes/user/class-wpml-translation-roles-records.php.

Tìm dòng này (khoảng dòng 144):

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

và thay đổi AND thành OR như sau:

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

Sau đó tìm dòng này (khoảng dòng 168):

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

và sau đó thêm một dòng thứ hai ngay bên dưới, như sau:

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

Như thường lệ khi thực hiện bất kỳ thay đổi nào như vậy, hãy đảm bảo bạn có bản sao lưu hiện tại trước khi tiếp tục.

Tất cả các lỗi đã ghi nhận →