WPML
Stato
Risolto
Risolto in
WPML 4.9
Tag dell’argomento
Bug

Panoramica del problema

Alcuni utenti configurano i propri siti per bloccare le richieste API REST non autenticate.

In questo caso, potresti notare che WPML segnala che il sito non soddisfa i requisiti minimi perché un endpoint API REST di prova non è raggiungibile, e i banner di avviso nella pagina WPML > Supporto e nel menu a discesa della barra degli strumenti dell’area di amministrazione di WPML non possono essere chiusi.

Soluzione alternativa

Fino alla risoluzione del problema, puoi rimuovere l’avviso modificando il file sitepress-multilingual-cms/vendor/wpml/wpml/src/Infrastructure/WordPress/SharedKernel/Server/Application/WordPressRestApiStatus.php

Individua queste righe (dalla riga 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'] );
    }

quindi, subito dopo, aggiungi queste 2 righe:

    // Add authentication from cookies
    $args['cookies'] = $_COOKIE;

Questo aggiungerà l’autenticazione necessaria alla richiesta che testa l’API REST.

Tutti i problemi noti →