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()));
}


Una delle cose fondamentali da eseguire quando si crea un nuovo sito in wordpress o Joomla è quello di evitare di utilizzare il nome utente che di default consiglia il CMS: admin.