Konfigurowanie wtyczki przez stronę Ustawień, zmienne środowiskowe, wp-config i hooki
Istnieje kilka sposobów konfigurowania opcji wtyczki.
Strona Ustawień
Strona Ustawień umożliwia konfigurowanie wtyczki w panelu administracyjnym WordPress.
Aby ją otworzyć, kliknij link "Settings" w menu wtyczki:

Ustawienia są zorganizowane w zakładki, gdzie każda zakładka odpowiada jednemu modułowi:

Po zaktualizowaniu opcji kliknij przycisk Save Changes, aby zapisać i zastosować nową wartość.
Przez zmienne środowiskowe i stałe wp-config
Wszystkie opcje ze strony Ustawień można również ustawić za pomocą zmiennych środowiskowych oraz stałych zdefiniowanych w pliku wp-config.php.
Priorytet wyboru wartości opcji jest następujący:
- Jeśli istnieje odpowiednia zmienna środowiskowa, jest ona używana
- Jeśli odpowiednia stała jest zdefiniowana w
wp-config.php, jest ona używana - W przeciwnym razie używana jest wartość ze strony Ustawień
Po dodaniu lub zmodyfikowaniu zmiennej środowiskowej lub stałej wp-config konfiguracja wtyczki musi zostać wygenerowana ponownie. W tym celu przejdź do strony Ustawień i kliknij Save Changes.
Zmienne środowiskowe
| Moduł | Opcja | Zmienna środowiskowa |
|---|---|---|
| Schema Editing Access | Editing Access Scheme | EDITING_ACCESS_SCHEME |
| Single Endpoint | Endpoint Path | GRAPHQL_API_ENDPOINT |
| Custom Endpoints | Endpoint Path | CUSTOM_ENDPOINT_SLUG_BASE |
| Persisted Queries | Endpoint Path | PERSISTED_QUERY_SLUG_BASE |
| Graphiql For Single Endpoint | Client Path | GRAPHIQL_CLIENT_ENDPOINT |
| Interactive Schema For Single Endpoint | Client Path | VOYAGER_CLIENT_ENDPOINT |
| Public Private Schema | Mode | USE_PRIVATE_SCHEMA_MODE |
| Public Private Schema | Enable Granular | ENABLE_INDIVIDUAL_CONTROL_FOR_PUBLIC_PRIVATE_SCHEMA_MODE |
| Schema Namespacing | Use Namespacing | NAMESPACE_TYPES_AND_INTERFACES |
| Nested Mutations | Enable Nested Mutations | ENABLE_NESTED_MUTATIONS |
| Nested Mutations | Disable redundant root type fields | DISABLE_REDUNDANT_ROOT_TYPE_MUTATION_FIELDS |
| Cache Control | Default Max Age | DEFAULT_CACHE_CONTROL_MAX_AGE |
| Schema Posts | List Default Limit | POST_LIST_DEFAULT_LIMIT |
| Schema Posts | List Max Limit | POST_LIST_MAX_LIMIT |
| Schema Posts | Add Type To Custom Post Union Type | ADD_POST_TYPE_TO_CUSTOMPOST_UNION_TYPES |
| Schema Users | List Default Limit | USER_LIST_DEFAULT_LIMIT |
| Schema Users | List Max Limit | USER_LIST_MAX_LIMIT |
| Schema Tags | List Default Limit | TAG_LIST_DEFAULT_LIMIT |
| Schema Tags | List Max Limit | TAG_LIST_MAX_LIMIT |
| Schema Pages | List Default Limit | PAGE_LIST_DEFAULT_LIMIT |
| Schema Pages | List Max Limit | PAGE_LIST_MAX_LIMIT |
| Schema Pages | Add Type To Custom Post Union Type | ADD_PAGE_TYPE_TO_CUSTOMPOST_UNION_TYPES |
| Schema Custom Posts | List Default Limit | CUSTOMPOST_LIST_DEFAULT_LIMIT |
| Schema Custom Posts | List Max Limit | CUSTOMPOST_LIST_MAX_LIMIT |
| Schema Custom Posts | Use Single Type Instead Of Union Type | USE_SINGLE_TYPE_INSTEAD_OF_CUSTOMPOST_UNION_TYPE |
Stałe wp-config
Nazwa stałej w pliku wp-config.php jest identyczna z nazwą zmiennej środowiskowej, z dodanym prefiksem GATOGRAPHQL_.
Na przykład zmienna środowiskowa EDITING_ACCESS_SCHEME musi być zdefiniowana jako GATOGRAPHQL_EDITING_ACCESS_SCHEME w wp-config.php.
Przez hooki
Możemy nadpisać wartość opcji za pomocą hooka.
Każda opcja wyzwala własny hook:
use PoP\ComponentModel\ComponentConfiguration\ComponentConfigurationHelpers;
$hookName = ComponentConfigurationHelpers::getHookName(
$componentConfigurationClass,
$envVariable
);
add_filter($hookName, 'myFunctionToOverrideSettingsValue', PHP_INT_MAX);Aby uzyskać nazwę hooka, musimy podać:
$componentConfigurationClass: KlasaComponentConfigurationz pakietu, w którym opcja jest zdefiniowana$envVariable: Nazwa zmiennej środowiskowej do ustawienia
Zapoznaj się z przykładem definiowania hooka.