Cấu hình plugin qua trang Cài đặt, biến môi trường, wp-config và hook
Có nhiều cách để cấu hình các tùy chọn trong plugin.
Trang Cài đặt
Trang Cài đặt cho phép cấu hình plugin trong phần quản trị WordPress.
Để mở trang này, nhấp vào liên kết "Settings" trong menu của plugin:

Các cài đặt được tổ chức theo tab, trong đó mỗi tab tương ứng với một module:

Sau khi cập nhật một tùy chọn, nhấp vào nút Save Changes để lưu và áp dụng giá trị mới.
Qua biến môi trường và hằng số wp-config
Tất cả các tùy chọn trên trang Cài đặt cũng có thể được thiết lập thông qua biến môi trường và các hằng số được định nghĩa trong file wp-config.php.
Thứ tự ưu tiên để chọn giá trị tùy chọn như sau:
- Nếu có biến môi trường tương ứng, nó sẽ được sử dụng
- Nếu có hằng số tương ứng được định nghĩa trong
wp-config.php, nó sẽ được sử dụng - Nếu không, giá trị từ trang Cài đặt sẽ được sử dụng
Sau khi thêm hoặc chỉnh sửa một biến môi trường hoặc hằng số wp-config, cấu hình plugin phải được tạo lại. Để làm điều đó, hãy vào trang Cài đặt và nhấp vào Save Changes.
Biến môi trường
| Module | Tùy chọn | Biến môi trường |
|---|---|---|
| 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 |
Hằng số wp-config
Tên của hằng số trong file wp-config.php giống với tên biến môi trường, nhưng được thêm tiền tố GATOGRAPHQL_.
Ví dụ, biến môi trường EDITING_ACCESS_SCHEME phải được định nghĩa là GATOGRAPHQL_EDITING_ACCESS_SCHEME trong wp-config.php.
Qua hook
Chúng ta có thể ghi đè giá trị của một tùy chọn thông qua hook.
Mỗi tùy chọn kích hoạt hook riêng của nó:
use PoP\ComponentModel\ComponentConfiguration\ComponentConfigurationHelpers;
$hookName = ComponentConfigurationHelpers::getHookName(
$componentConfigurationClass,
$envVariable
);
add_filter($hookName, 'myFunctionToOverrideSettingsValue', PHP_INT_MAX);Để lấy tên hook, chúng ta cần cung cấp:
$componentConfigurationClass: ClassComponentConfigurationtừ package, nơi tùy chọn được định nghĩa$envVariable: Tên của biến môi trường cần thiết lập
Vui lòng xem một ví dụ về cách thiết lập hook.