Ecco il codice da inserire all’interno del functions.php del vostro tema wordpress per disattivare l’accesso all’elenco degli utenti o l’accesso alle informazioni di un utente tramite la chiamata REST API di wordpress.
Questo per aumentare la sicurezza del vostro sito web.
add_filter( 'rest_endpoints', function( $endpoints ){ if ( isset( $endpoints['/wp/v2/users'] ) ) { unset( $endpoints['/wp/v2/users'] ); } if ( isset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] ) ) { unset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] ); } return $endpoints; });
Questo invece (SCELTA CONSIGLIATA) per disattivare le REST API agli utenti non autenticati:
add_filter( 'rest_authentication_errors', function( $result ) { if ( ! empty( $result ) ) { return $result; } if ( ! is_user_logged_in() ) { return new WP_Error( 'rest_not_logged_in', 'You are not currently logged in.', array( 'status' => 401 ) ); } return $result; });
se invece volete disattivare completamente tutte le REST API inserire questo:
add_filter( 'rest_authentication_errors', 'wp_snippet_disable_rest_api' ); function wp_snippet_disable_rest_api( $access ) { return new WP_Error( 'rest_disabled', __('The WordPress REST API has been disabled.'), array( 'status' => rest_authorization_required_code())); }