Ayarın izin verilen girişlerini tanımlama
Schema Settings modülü ile siteye ait ayarları (wp_options tablosunda saklanan), optionValue, optionValues ve optionObjectValue alanlarını sorgulayarak alabilirsiniz.
Bu alanların farklı imzaları vardır:
optionValue: AnyBuiltInScalaroptionValues: [AnyBuiltInScalar]optionObjectValue: JSONObject
Örneğin, bu query sitenin URL'sini getirir:
{
homeURL: optionValue(name: "home")
}Güvenlik nedeniyle, hangi seçeneklerin sorgulanabileceği açıkça yapılandırılmalıdır.
Ayar yanıtı
Herhangi bir "optionValue" alanı çalıştırılırken, seçenek adına erişime Ayarlar'da izin verilmiyorsa query bir hata döndürür.
Örneğin, bu query çalıştırıldığında:
{
optionValue(name: "nonExistentOption")
}Şunu döndürür:
{
"errors": [
{
"message": "There is no option with name 'nonExistentOption'",
"extensions": {
"type": "Root",
"id": "root",
"field": "optionValue(name:\"nonExistentOption\")"
}
}
],
"data": {
"option": null
}
}Aksi takdirde, yanıt belirtilen ada sahip ayarın değeridir.
İzin verilen seçenekleri yapılandırma
Sorgulanabilecek seçenek adlarının listesini yapılandırmamız gerekir.
Her giriş şunlardan biri olabilir:
- Bir regex (düzenli ifade),
/veya#ile çevriliyse, ya da - Tam seçenek adı, aksi takdirde
Örneğin, bu girişlerden herhangi biri "siteurl" meta anahtarıyla eşleşir:
siteurl/site.*/#site([a-zA-Z]*)#
Bu yapılandırmanın gerçekleşebileceği, öncelik sırasına göre 2 yer vardır:
- Özel: İlgili Şema Yapılandırmasında
- Genel: Ayarlar sayfasında
Uç noktaya uygulanan Şema Yapılandırmasında "Use custom configuration" seçeneğini seçin ve ardından istediğiniz girişleri girin:

Aksi takdirde, Ayarlar'daki "Settings" sekmesinde tanımlanan girişler kullanılacaktır:

2 davranış vardır: "Allow access" ve "Deny access":
- Allow access: yalnızca yapılandırılan girişlere erişilebilir, diğerlerine erişilemez
- Deny access: yapılandırılan girişlere erişilemez, diğer tüm girişlere erişilebilir

Varsayılan seçenekler
Eklenti kurulduğunda, aşağıdaki seçenekler erişilebilir olarak önceden tanımlanmıştır:
"siteurl""home""blogname""blogdescription""WPLANG""posts_per_page""date_format""time_format""blog_charset"