Configurare il plugin tramite la pagina Impostazioni, le variabili d'ambiente, wp-config e gli hook
Esistono diversi modi per configurare le opzioni del plugin.
La pagina Impostazioni
La pagina Impostazioni consente di configurare il plugin nell'amministrazione di WordPress.
Per aprirla, fai clic sul link «Settings» nel menu del plugin:

Le impostazioni sono organizzate in schede, dove ogni scheda corrisponde a un modulo:

Dopo aver aggiornato un'opzione, fai clic sul pulsante Save Changes per salvare e applicare il nuovo valore.
Tramite le variabili d'ambiente e le costanti wp-config
Tutte le opzioni della pagina Impostazioni possono anche essere definite tramite variabili d'ambiente e costanti definite nel file wp-config.php.
La priorità per scegliere il valore dell'opzione è la seguente:
- Se esiste la variabile d'ambiente corrispondente, viene utilizzata
- Se la costante corrispondente è definita in
wp-config.php, viene utilizzata - Altrimenti, viene utilizzato il valore della pagina Impostazioni
Dopo aver aggiunto o modificato una variabile d'ambiente o una costante wp-config, la configurazione del plugin deve essere rigenerata. Per farlo, accedi alla pagina Impostazioni e fai clic su Save Changes.
Variabili d'ambiente
| Modulo | Opzione | Variabile d'ambiente |
|---|---|---|
| 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 |
Costanti wp-config
Il nome della costante nel file wp-config.php è identico a quello della variabile d'ambiente, anteponendole il prefisso GATOGRAPHQL_.
Ad esempio, la variabile d'ambiente EDITING_ACCESS_SCHEME deve essere definita come GATOGRAPHQL_EDITING_ACCESS_SCHEME in wp-config.php.
Tramite gli hook
Possiamo sovrascrivere il valore di un'opzione tramite un hook.
Ogni opzione attiva il proprio hook:
use PoP\ComponentModel\ComponentConfiguration\ComponentConfigurationHelpers;
$hookName = ComponentConfigurationHelpers::getHookName(
$componentConfigurationClass,
$envVariable
);
add_filter($hookName, 'myFunctionToOverrideSettingsValue', PHP_INT_MAX);Per ottenere il nome dell'hook, dobbiamo fornire:
$componentConfigurationClass: La classeComponentConfigurationdel package in cui è definita l'opzione$envVariable: Il nome della variabile d'ambiente da impostare
Consulta un esempio su come definire un hook.