PluginProbe
WPGraphQL / trunk
WPGraphQL vtrunk
2.22.3 2.22.2 2.22.1 2.22.0 2.21.1 2.21.0 2.20.0 2.19.0 2.18.0 2.17.0 2.16.0 2.15.1 2.15.0 2.14.1 2.14.0 2.13.0 2.2.0 2.3.0 2.3.3 2.3.6 2.3.8 2.5.0 2.5.1 2.5.2 2.5.3 All 177 releases
wp-graphql / src / Admin / Extensions / Registry.php

Registry.php in WPGraphQL trunk, at src/Admin/Extensions/Registry.php

135 lines 5.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Registry of WPGraphQL Extensions
4 *
5 * @todo This will eventually be replaced with a server registry.
6 *
7 * @package WPGraphQL\Admin\Extensions
8 * @since 1.30.0
9 */
10
11 namespace WPGraphQL\Admin\Extensions;
12
13 /**
14 * Class Registry
15 *
16 * phpcs:disable -- For phpstan type hinting
17 * @phpstan-type ExtensionAuthor array{
18 * name: string,
19 * homepage?: string,
20 * }
21 * @phpstan-type Extension array{
22 * name: non-empty-string,
23 * description: non-empty-string,
24 * plugin_url: non-empty-string,
25 * support_url: non-empty-string,
26 * documentation_url: non-empty-string,
27 * repo_url?: string,
28 * author: ExtensionAuthor,
29 * }
30 * phpcs:enable
31 */
32 final class Registry {
33 /**
34 * Gets the registry of WPGraphQL Extensions.
35 *
36 * @see docs/submit-extensions.md for more information on how to submit an extension.
37 *
38 * Fields:
39 * - name: Required. The name of the extension.
40 * - description: Required. A description of the extension.
41 * - plugin_url: Required. The URL to the plugin.
42 * - repo_url: Optional. The URL to the repository for the plugin.
43 * - support_url: Required. The URL to the support page for the plugin.
44 * - documentation_url: Required. The URL to the documentation for the plugin.
45 * - author: Required. An array with the following fields:
46 * - name: Required. The name of the author.
47 * - homepage: Optional. The URL to the author's homepage.
48 *
49 * Array keys are solely used to sort the array and prevent merge conflicts when diffing. They should be unique.
50 *
51 * @return array<string,Extension>
52 */
53 public static function get_extensions(): array {
54 return [
55 'wp-graphql/wpgraphql-ide' => [
56 'name' => 'WPGraphQL IDE',
57 'description' => 'GraphQL IDE for WPGraphQL',
58 'documentation_url' => 'https://github.com/wp-graphql/wpgraphql-ide',
59 'plugin_url' => 'https://wordpress.org/plugins/wpgraphql-ide/',
60 'support_url' => 'https://github.com/wp-graphql/wpgraphql-ide/issues/new/choose',
61 'author' => [
62 'name' => 'WPGraphQL',
63 'homepage' => 'https://wpgraphql.com',
64 ],
65 ],
66 'wp-graphql/wp-graphql-smart-cache' => [
67 'name' => 'WPGraphQL Smart Cache',
68 'description' => 'A smart cache for WPGraphQL that caches only the data you need.',
69 'documentation_url' => 'https://github.com/wp-graphql/wp-graphql/tree/main/plugins/wp-graphql-smart-cache',
70 'plugin_url' => 'https://wordpress.org/plugins/wp-graphql-smart-cache/',
71 'support_url' => 'https://github.com/wp-graphql/wp-graphql-smart-cache/issues/new/choose',
72 'author' => [
73 'name' => 'WPGraphQL',
74 'homepage' => 'https://wpgraphql.com',
75 ],
76 ],
77 'wp-graphql/wpgraphql-acf' => [
78 'name' => 'WPGraphQL for Advanced Custom Fields',
79 'description' => 'WPGraphQL for ACF is a FREE, open source WordPress plugin that exposes ACF Field Groups and Fields to the WPGraphQL Schema, enabling powerful decoupled solutions with modern frontends.',
80 'documentation_url' => 'https://www.wpgraphql.com/docs/acf',
81 'plugin_url' => 'https://wordpress.org/plugins/wpgraphql-acf/',
82 'support_url' => 'https://github.com/wp-graphql/wpgraphql-acf/issues/new/choose',
83 'author' => [
84 'name' => 'WPGraphQL',
85 'homepage' => 'https://wpgraphql.com',
86 ],
87 ],
88 'ashhitch/wp-graphql-yoast-seo' => [
89 'name' => 'WPGraphQL Yoast SEO Addon',
90 'description' => 'This plugin enables Yoast SEO Support for WPGraphQL',
91 'documentation_url' => 'https://github.com/ashhitch/wp-graphql-yoast-seo',
92 'plugin_url' => 'https://wordpress.org/plugins/add-wpgraphql-seo/',
93 'support_url' => 'https://github.com/wp-graphql/wpgraphql-acf/issues/new/choose',
94 'author' => [
95 'name' => 'Ash Hitchcock',
96 'homepage' => 'https://www.ashleyhitchcock.com/',
97 ],
98 ],
99 'axepress/wp-graphql-gravity-forms' => [
100 'name' => 'WPGraphQL for Gravity Forms',
101 'description' => 'Adds Gravity Forms support to WPGraphQL',
102 'documentation_url' => 'https://github.com/axewp/wp-graphql-gravity-forms',
103 'plugin_url' => 'https://github.com/axewp/wp-graphql-gravity-forms',
104 'support_url' => 'https://github.com/axewp/wp-graphql-gravity-forms/issues/new/choose',
105 'author' => [
106 'name' => 'AxePress Development',
107 'homepage' => 'https://axepress.dev',
108 ],
109 ],
110 'axepress/wp-graphql-headless-login' => [
111 'name' => 'Headless Login for WPGraphQL',
112 'description' => 'A WordPress plugin that provides headless login and authentication for WPGraphQL, supporting traditional passwords, OAuth2/OIDC, JWT, cookies, header management, and more.',
113 'documentation_url' => 'https://github.com/axewp/wp-graphql-headless-login',
114 'plugin_url' => 'https://github.com/axewp/wp-graphql-headless-login',
115 'support_url' => 'https://github.com/axewp/wp-graphql-headless-login/issues/new/choose',
116 'author' => [
117 'name' => 'AxePress Development',
118 'homepage' => 'https://axepress.dev',
119 ],
120 ],
121 'axepress/wp-graphql-rank-math' => [
122 'name' => 'WPGraphQL for Rank Math SEO',
123 'description' => 'Adds Rank Math SEO support to WPGraphQL',
124 'documentation_url' => 'https://github.com/axewp/wp-graphql-rank-math',
125 'plugin_url' => 'https://github.com/axewp/wp-graphql-rank-math',
126 'support_url' => 'https://github.com/axewp/wp-graphql-rank-math/issues',
127 'author' => [
128 'name' => 'AxePress Development',
129 'homepage' => 'https://axepress.dev',
130 ],
131 ],
132 ];
133 }
134 }
135