Konfiguracja wtyczki
Konfiguracja wtyczkiPrzeglądanie, włączanie i wyłączanie modułów

Przeglądanie, włączanie i wyłączanie modułów

Wszystkie funkcje Gato GraphQL są dostarczane przez moduły. Uzyskaj do nich dostęp, klikając „Modules" w menu wtyczki:

Modules

Każdy moduł może być włączony lub wyłączony. Ich stan jest widoczny w tabeli:

  • Włączone moduły mają kolorowe tło
  • Wyłączone moduły mają białe tło

Włączanie/wyłączanie modułu

Po najechaniu kursorem na nazwę wyłączonego modułu pojawi się link "Enable". Kliknięcie go włączy moduł:

Włączanie modułu

Analogicznie, po najechaniu kursorem na nazwę włączonego modułu pojawi się link "Disable". Kliknięcie go wyłączy moduł.

Grupowo

Alternatywnie możemy zaznaczyć pole wyboru przy każdym module i wybrać "Enable" lub "Disable" z listy rozwijanej „Bulk actions":

Wyłączanie modułów grupowo

Wyłączanie modułów w publicznych i prywatnych endpointach

Wyłączanie modułów pozwala nam usunąć niektóre funkcje z serwera GraphQL (np. single endpoint) lub usunąć pewien element ze schematu GraphQL (np. typ, pole lub dyrektywę).

„Moduły schematu" (Schema modules) to moduły, które dodają typy/pola/dyrektywy do schematu GraphQL (znajdowane w kategoriach „Schema Type" i „Schema Directive" na stronie modułów). Możemy zwiększyć bezpieczeństwo API GraphQL, wyłączając wszystkie „Schema modules", które nie są potrzebne — dane, które nie powinny być udostępniane, nigdy nie są eksponowane.

Na przykład po wyłączeniu modułu „Users" pola użytkownika (QueryRoot.users, Post.author i inne) zostaną usunięte ze schematu GraphQL.

Wyłączanie endpointów (zgodnie z wyjaśnieniem w poprzedniej sekcji) zawsze działa na publicznych endpointach:

  • Single endpoint
  • Custom endpoints
  • Persisted queries

Jednak możemy chcieć ograniczyć dostęp do „Schema modules" tylko dla odwiedzających (tj. w publicznych endpointach), ale nie dla administratora witryny w prywatnych endpointach, aby nie ograniczać możliwości dostępu do pełnego schematu GraphQL w celu wykonywania wewnętrznych zadań.

Prywatne endpointy to:

  • Endpoint wp-admin/edit.php?page=graphql_api&action=run_query (który obsługuje klientów GraphiQL i Interactive Schema administratora i może być wywoływany w edytorze WordPress, aby dostarczać dane do bloków)
  • Custom private endpoints (również używane do dostarczania danych do bloków, ale umożliwiające zablokowanie konfiguracji za pomocą hooków PHP)
  • Queries GraphQL wykonywane wewnętrznie (za pomocą klasy GraphQLServer w PHP)

Aby „Schema modules" były również wyłączone w prywatnych endpointach, musimy skonfigurować to na karcie „Plugin Configuration > Private Endpoints" na stronie ustawień, zaznaczając element „Disable "Schema modules" in the private endpoints?"

Wyłączanie modułów grupowo

Zależności między modułami

Każdy moduł może mieć zależność od innego modułu. W takim przypadku, jeśli moduł, od którego zależy, zostanie wyłączony, jego zależne moduły również zostaną wyłączone.

Informacja ta jest widoczna w kolumnie "Depends on" tabeli modułów:

Zależności między modułami

Na przykład, jeśli moduł „Schema Configuration" zostanie wyłączony, moduł „Schema Namespacing" również zostanie wyłączony.

Filtrowanie modułów

Moduły są pogrupowane według kategorii:

  • Plugin Management
  • Endpoint
  • Schema Configuration
  • Access Control
  • Versioning
  • User Interface
  • Performance
  • Operational
  • Client
  • Schema Type

Kliknięcie dowolnej kategorii spowoduje wyświetlenie tylko odpowiednich modułów.

Filtrowanie modułów

Wyświetlanie dokumentacji modułu

Możemy przeczytać dokumentację modułu, klikając link "View details" poniżej opisu modułu:

Wyświetlanie dokumentacji modułu

Dostęp do ustawień modułu

Po najechaniu kursorem na nazwę modułu pojawi się link "Settings" (chyba że moduł nie ma ustawień).

Kliknięcie go otworzy stronę ustawień, skupioną na karcie modułu:

Dostęp do ustawień modułu