- Статус
- Решено
- Решено в
- WPML 4.9
- Теги темы
- Bug
Обзор проблемы
Некоторые пользователи настраивают свои сайты так, чтобы блокировать неаутентифицированные запросы к REST API.
В этом случае Вы можете увидеть сообщение WPML о том, что сайт не соответствует минимальным требованиям, поскольку тестовая конечная точка REST API недоступна, а предупреждающие баннеры на странице WPML > Поддержка и в выпадающем меню WPML на панели инструментов админ-панели невозможно закрыть.
Обходное решение
Пока это не исправлено, уведомление можно удалить, отредактировав файл sitepress-multilingual-cms/vendor/wpml/wpml/src/Infrastructure/WordPress/SharedKernel/Server/Application/WordPressRestApiStatus.php
Найдите эти строки (начиная со строки 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'] );
}
затем сразу после них добавьте эти 2 строки:
// Add authentication from cookies
$args['cookies'] = $_COOKIE;
Это добавит необходимую аутентификацию в запрос, который проверяет REST API.