WPML
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.

Alle bekannten Probleme →