การตั้งค่าปลั๊กอิน
การตั้งค่าปลั๊กอินการกำหนดค่าปลั๊กอินผ่านหน้า Settings, environment variables, wp-config และ hooks

การกำหนดค่าปลั๊กอินผ่านหน้า Settings, environment variables, wp-config และ hooks

มีหลายวิธีในการกำหนดค่าตัวเลือกของปลั๊กอิน

หน้า Settings

หน้า Settings ช่วยให้คุณกำหนดค่าปลั๊กอินในหน้าจัดการ WordPress ได้

ในการเปิด ให้คลิกที่ลิงก์ "Settings" ในเมนูของปลั๊กอิน:

การเปิดหน้า Settings

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

หน้า Settings

หลังจากอัปเดตตัวเลือกแล้ว ให้คลิกปุ่ม Save Changes เพื่อบันทึกและใช้ค่าใหม่

ผ่าน environment variables และค่าคงที่ wp-config

ตัวเลือกทั้งหมดจากหน้า Settings สามารถตั้งค่าได้ผ่าน environment variables และค่าคงที่ที่กำหนดในไฟล์ wp-config.php

ลำดับความสำคัญในการเลือกค่าตัวเลือกมีดังนี้:

  1. หากมี environment variable ที่สอดคล้องกัน จะใช้ค่านั้น
  2. หากมีค่าคงที่ที่กำหนดใน wp-config.php จะใช้ค่านั้น
  3. มิฉะนั้น จะใช้ค่าจากหน้า Settings

หลังจากเพิ่มหรือแก้ไข environment variable หรือค่าคงที่ wp-config จะต้องสร้างการกำหนดค่าปลั๊กอินใหม่ โดยไปที่หน้า Settings แล้วคลิก Save Changes

Environment variables

โมดูลตัวเลือกEnvironment variable
Schema Editing AccessEditing Access SchemeEDITING_ACCESS_SCHEME
Single EndpointEndpoint PathGRAPHQL_API_ENDPOINT
Custom EndpointsEndpoint PathCUSTOM_ENDPOINT_SLUG_BASE
Persisted QueriesEndpoint PathPERSISTED_QUERY_SLUG_BASE
Graphiql For Single EndpointClient PathGRAPHIQL_CLIENT_ENDPOINT
Interactive Schema For Single EndpointClient PathVOYAGER_CLIENT_ENDPOINT
Public Private SchemaModeUSE_PRIVATE_SCHEMA_MODE
Public Private SchemaEnable GranularENABLE_INDIVIDUAL_CONTROL_FOR_PUBLIC_PRIVATE_SCHEMA_MODE
Schema NamespacingUse NamespacingNAMESPACE_TYPES_AND_INTERFACES
Nested MutationsEnable Nested MutationsENABLE_NESTED_MUTATIONS
Nested MutationsDisable redundant root type fieldsDISABLE_REDUNDANT_ROOT_TYPE_MUTATION_FIELDS
Cache ControlDefault Max AgeDEFAULT_CACHE_CONTROL_MAX_AGE
Schema PostsList Default LimitPOST_LIST_DEFAULT_LIMIT
Schema PostsList Max LimitPOST_LIST_MAX_LIMIT
Schema PostsAdd Type To Custom Post Union TypeADD_POST_TYPE_TO_CUSTOMPOST_UNION_TYPES
Schema UsersList Default LimitUSER_LIST_DEFAULT_LIMIT
Schema UsersList Max LimitUSER_LIST_MAX_LIMIT
Schema TagsList Default LimitTAG_LIST_DEFAULT_LIMIT
Schema TagsList Max LimitTAG_LIST_MAX_LIMIT
Schema PagesList Default LimitPAGE_LIST_DEFAULT_LIMIT
Schema PagesList Max LimitPAGE_LIST_MAX_LIMIT
Schema PagesAdd Type To Custom Post Union TypeADD_PAGE_TYPE_TO_CUSTOMPOST_UNION_TYPES
Schema Custom PostsList Default LimitCUSTOMPOST_LIST_DEFAULT_LIMIT
Schema Custom PostsList Max LimitCUSTOMPOST_LIST_MAX_LIMIT
Schema Custom PostsUse Single Type Instead Of Union TypeUSE_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