Mengonfigurasi plugin
Mengonfigurasi pluginMengkonfigurasi plugin melalui halaman Pengaturan, variabel lingkungan, wp-config, dan hooks

Mengkonfigurasi plugin melalui halaman Pengaturan, variabel lingkungan, wp-config, dan hooks

Ada beberapa cara untuk mengkonfigurasi opsi pada plugin.

Halaman Pengaturan

Halaman Pengaturan memungkinkan untuk mengkonfigurasi plugin di panel admin WordPress.

Untuk membukanya, klik tautan "Settings" pada menu plugin:

Membuka halaman Pengaturan

Pengaturan diorganisir berdasarkan tab, di mana setiap tab bersesuaian dengan sebuah modul:

Halaman Pengaturan

Setelah memperbarui suatu opsi, klik tombol Save Changes untuk menyimpan dan menerapkan nilai baru.

Melalui variabel lingkungan dan konstanta wp-config

Semua opsi dari halaman Pengaturan juga dapat diatur melalui variabel lingkungan, dan konstanta yang didefinisikan dalam file wp-config.php.

Prioritas untuk memilih nilai opsi adalah sebagai berikut:

  1. Jika terdapat variabel lingkungan yang sesuai, maka variabel tersebut digunakan
  2. Jika terdapat konstanta yang sesuai yang didefinisikan di wp-config.php, maka konstanta tersebut digunakan
  3. Jika tidak, nilai dari halaman Pengaturan yang digunakan

Setelah menambahkan atau mengubah nilai lingkungan atau konstanta wp-config, konfigurasi plugin harus diregenerasi. Untuk itu, pergi ke halaman Pengaturan, dan klik Save Changes.

Variabel lingkungan

ModulOpsiNilai lingkungan
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

Konstanta wp-config

Nama konstanta dalam file wp-config.php sama dengan variabel lingkungan, dengan menambahkan awalan GATOGRAPHQL_.

Misalnya, variabel lingkungan EDITING_ACCESS_SCHEME harus didefinisikan sebagai GATOGRAPHQL_EDITING_ACCESS_SCHEME di wp-config.php.

Melalui hooks

Kita dapat mengganti nilai suatu opsi melalui sebuah hook.

Setiap opsi memicu hooknya sendiri:

use PoP\ComponentModel\ComponentConfiguration\ComponentConfigurationHelpers;
 
$hookName = ComponentConfigurationHelpers::getHookName(
    $componentConfigurationClass,
    $envVariable
);
add_filter($hookName, 'myFunctionToOverrideSettingsValue', PHP_INT_MAX);

Untuk mendapatkan nama hook, kita perlu menyediakan:

  • $componentConfigurationClass: Kelas ComponentConfiguration dari paket, tempat opsi tersebut didefinisikan
  • $envVariable: Nama variabel lingkungan yang akan diatur

Silakan periksa sebuah contoh tentang cara mengatur sebuah hook.