Wordpress

Czarna dziura. Czyli rest api a WORDPRESS

Aby pozwolić wyłącznie zalogowanym użytkownikom podejrzeć endpointy generowane przez WP, należy dodać poniższy kod:

function mytheme_only_allow_logged_in_rest_access( $access ) {
	if( ! is_user_logged_in() ) {
		return new WP_Error(
                    'rest_cannot_access', 
                    __( 'Only authenticated users can access the REST API.', 'disable-json-api' ), 
                    array( 
                        'status' => rest_authorization_required_code() 
                    ) 
                 );
	}
	return $access;
}
add_filter( 'rest_authentication_errors', 'mytheme_only_allow_logged_in_rest_access' );

Wersja z dostępem dla administratorów

function mytheme_only_allow_logged_in_rest_access( $access ) {
	if( ! is_user_logged_in() || ! current_user_can( 'manage_options' ) ) {
		return new WP_Error( 'rest_cannot_access', __( 'Only authenticated users can access the REST API.', 'disable-json-api' ), array( 'status' => rest_authorization_required_code() ) );
	}
	return $access;
}
add_filter( 'rest_authentication_errors', 'mytheme_only_allow_logged_in_rest_access' );

List domyślnych endpointów

add_filter( 'rest_endpoints', 'show_default_endpoints' );
  
function show_default_endpoints( $endpoints ) {
  var_export( array_keys( $endpoints ) );
  die;
}

Usuwanie tylko domyślnych endpointów

add_filter( 'rest_endpoints', 'remove_default_endpoints' );
  
function remove_default_endpoints( $endpoints ) {
  return array( );
}
POPRZEDNI POST Jak przygotować się do przeprojektowania strony internetowej?
NASTĘPNY POST Poprawne wiadomości podczas błędnego logowania na Twojej stronie www

Porozmawiajmy

Możemy pomóc Ci przekuć Twój pomysł w realne przedsięwzięcie. Po prostu do nas napisz. Jeśli jesteś zainteresowany dołączeniem do naszego zespołu, nie czekaj. Cały czas szukamy talentów!

POPRZEDNI POST Jak przygotować się do przeprojektowania strony internetowej?
NASTĘPNY POST Poprawne wiadomości podczas błędnego logowania na Twojej stronie www
Strony internetowe Lublin

Something went wrong

Probably Charles broke something.
Please try again. Sorry!