Using custom UGameUserSettings

Hi!
I’m trying to use a custom version of UGameUserSettings in Blueprint, what’s the ‘right’ way to do this?

I changed the Settings, but what difference does it make?
I still need to define a function to use my custom UGameUserSettings in Blueprint.

For those who searched about how to do it but didn’t find answers:

.h

UCLASS()
class MYGAME_API UPlayerGameSettings final : public UGameUserSettings
{
public:
	UFUNCTION(BlueprintCallable, Category=Settings)
	static UPlayerGameSettings* GetPlayerGameSettings();
}

.cpp

UPlayerGameSettings* UPlayerGameSettings::GetPlayerGameSettings()
{
	return GEngine ? CastChecked<UPlayerGameSettings>(GEngine->GetGameUserSettings()) : nullptr;
}

Is this the right ( or only ) way to expose my settings class in Blueprint?
What is the purpose of Game User Settings Class in Project Settings?

Thank you!