การกำหนดค่าปลั๊กอินผ่านหน้า Settings, environment variables, wp-config และ hooks
มีหลายวิธีในการกำหนดค่าตัวเลือกของปลั๊กอิน
หน้า Settings
หน้า Settings ช่วยให้คุณกำหนดค่าปลั๊กอินในหน้าจัดการ WordPress ได้
ในการเปิด ให้คลิกที่ลิงก์ "Settings" ในเมนูของปลั๊กอิน:

การตั้งค่าถูกจัดเรียงตามแท็บ โดยแต่ละแท็บจะสอดคล้องกับโมดูลหนึ่ง:

หลังจากอัปเดตตัวเลือกแล้ว ให้คลิกปุ่ม Save Changes เพื่อบันทึกและใช้ค่าใหม่
ผ่าน environment variables และค่าคงที่ wp-config
ตัวเลือกทั้งหมดจากหน้า Settings สามารถตั้งค่าได้ผ่าน environment variables และค่าคงที่ที่กำหนดในไฟล์ wp-config.php
ลำดับความสำคัญในการเลือกค่าตัวเลือกมีดังนี้:
- หากมี environment variable ที่สอดคล้องกัน จะใช้ค่านั้น
- หากมีค่าคงที่ที่กำหนดใน
wp-config.phpจะใช้ค่านั้น - มิฉะนั้น จะใช้ค่าจากหน้า Settings
หลังจากเพิ่มหรือแก้ไข environment variable หรือค่าคงที่ wp-config จะต้องสร้างการกำหนดค่าปลั๊กอินใหม่ โดยไปที่หน้า Settings แล้วคลิก Save Changes
Environment variables
| โมดูล | ตัวเลือก | Environment variable |
|---|---|---|
| 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
ชื่อของค่าคงที่ในไฟล์ wp-config.php เหมือนกับ environment variable โดยเติม GATOGRAPHQL_ ไว้ข้างหน้า
ตัวอย่างเช่น environment variable EDITING_ACCESS_SCHEME ต้องกำหนดเป็น GATOGRAPHQL_EDITING_ACCESS_SCHEME ใน wp-config.php
ผ่าน hooks
เราสามารถแทนที่ค่าของตัวเลือกได้ผ่าน hook
แต่ละตัวเลือกจะทริกเกอร์ hook ของตัวเอง:
use PoP\ComponentModel\ComponentConfiguration\ComponentConfigurationHelpers;
$hookName = ComponentConfigurationHelpers::getHookName(
$componentConfigurationClass,
$envVariable
);
add_filter($hookName, 'myFunctionToOverrideSettingsValue', PHP_INT_MAX);ในการรับชื่อ hook เราต้องระบุ:
$componentConfigurationClass: คลาสComponentConfigurationจากแพ็กเกจ ที่กำหนดตัวเลือกนั้น$envVariable: ชื่อของ environment variable ที่ต้องการตั้งค่า
โปรดดูตัวอย่างการตั้งค่า hook