Eklentiyi Ayarlar sayfası, ortam değişkenleri, wp-config ve hook'lar ile yapılandırma
Eklentideki seçenekleri yapılandırmanın birkaç yolu vardır.
Ayarlar sayfası
Ayarlar sayfası, eklentiyi WordPress yönetim panelinden yapılandırmanızı sağlar.
Açmak için eklenti menüsündeki "Settings" bağlantısına tıklayın:

Ayarlar sekmeler halinde düzenlenmiştir; her sekme bir modüle karşılık gelir:

Bir seçeneği güncelledikten sonra yeni değeri kaydetmek ve uygulamak için Save Changes düğmesine tıklayın.
Ortam değişkenleri ve wp-config sabitleri aracılığıyla
Ayarlar sayfasındaki tüm seçenekler, ortam değişkenleri ve wp-config.php dosyasında tanımlanan sabitler aracılığıyla da ayarlanabilir.
Seçenek değerini belirlemek için öncelik sırası şöyledir:
- Karşılık gelen ortam değişkeni varsa kullanılır
wp-config.phpdosyasında karşılık gelen sabit tanımlıysa kullanılır- Aksi takdirde Ayarlar sayfasındaki değer kullanılır
Bir ortam değeri veya wp-config sabiti ekledikten ya da değiştirdikten sonra eklenti yapılandırması yeniden oluşturulmalıdır. Bunun için Ayarlar sayfasına gidin ve Save Changes düğmesine tıklayın.
Ortam değişkenleri
| Modül | Seçenek | Ortam değişkeni |
|---|---|---|
| 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 |
wp-config sabitleri
wp-config.php dosyasındaki sabitin adı, ortam değişkeninin adıyla aynıdır; önüne GATOGRAPHQL_ eklenir.
Örneğin, EDITING_ACCESS_SCHEME ortam değişkeni wp-config.php dosyasında GATOGRAPHQL_EDITING_ACCESS_SCHEME olarak tanımlanmalıdır.
Hook'lar aracılığıyla
Bir seçeneğin değerini hook aracılığıyla geçersiz kılabiliriz.
Her seçenek kendi hook'unu tetikler:
use PoP\ComponentModel\ComponentConfiguration\ComponentConfigurationHelpers;
$hookName = ComponentConfigurationHelpers::getHookName(
$componentConfigurationClass,
$envVariable
);
add_filter($hookName, 'myFunctionToOverrideSettingsValue', PHP_INT_MAX);Hook adını elde etmek için şunları sağlamamız gerekir:
$componentConfigurationClass: Seçeneğin tanımlandığı pakettekiComponentConfigurationsınıfı$envVariable: Ayarlanacak ortam değişkeninin adı
Hook tanımlama konusunda bir örneğe göz atın.