- Trạng thái
- Đã giải quyết
- Đã giải quyết trong
- WPML 4.9
- Thẻ chủ đề
- Bug
Tổng quan về lỗi
Một số người dùng thiết lập trang web của họ để chặn các yêu cầu REST API không được xác thực.
Trong trường hợp đó, bạn có thể thấy WPML báo cáo rằng trang web không đáp ứng các yêu cầu tối thiểu vì không thể truy cập vào một endpoint REST API thử nghiệm, và các biểu ngữ cảnh báo trên trang WPML > Hỗ trợ và trong menu thả xuống trên thanh công cụ trang quản trị WPML không thể đóng lại.
Giải pháp tạm thời
Cho đến khi vấn đề này được khắc phục, có thể xóa thông báo bằng cách chỉnh sửa tệp sitepress-multilingual-cms/vendor/wpml/wpml/src/Infrastructure/WordPress/SharedKernel/Server/Application/WordPressRestApiStatus.php
Tìm các dòng này (từ dòng 70):
// Add basic authentication if present
if ( isset( $_SERVER['PHP_AUTH_USER'] ) && isset( $_SERVER['PHP_AUTH_PW'] ) ) {
$args['headers']['Authorization'] =
'Basic ' . base64_encode( $_SERVER['PHP_AUTH_USER'] . ':' . $_SERVER['PHP_AUTH_PW'] );
}
sau đó thêm 2 dòng này vào ngay phía sau:
// Add authentication from cookies
$args['cookies'] = $_COOKIE;
Thao tác này sẽ thêm xác thực cần thiết vào yêu cầu kiểm tra REST API.