- Status
- Gelöst
- Gelöst in
- WPML 4.9
- Themen-Tags
- Bug
Übersicht über das Problem
Einige Benutzer richten ihre Websites so ein, dass sie nicht authentifizierte REST-API-Anfragen blockieren.
In diesem Fall stellen Sie möglicherweise fest, dass WPML meldet, dass die Website die Mindestanforderungen nicht erfüllt, weil ein Test-REST-API-Endpunkt nicht erreichbar ist, und dass sich die Warnbanner auf der Seite WPML > Support und im Dropdown-Menü der WPML-Werkzeugleiste im Admin-Bereich nicht ausblenden lassen.
Problemumgehung
Bis dies behoben ist, kann der Hinweis durch Bearbeiten der Datei sitepress-multilingual-cms/vendor/wpml/wpml/src/Infrastructure/WordPress/SharedKernel/Server/Application/WordPressRestApiStatus.php entfernt werden.
Suchen Sie diese Zeilen (ab Zeile 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'] );
}
Fügen Sie dann direkt danach diese 2 Zeilen hinzu:
// Add authentication from cookies
$args['cookies'] = $_COOKIE;
Dadurch wird der Anfrage, die die REST-API testet, die erforderliche Authentifizierung hinzugefügt.