[wp-trac] [WordPress Trac] #64790: Connectors: Register as a dedicated admin page instead of a virtual submenu page
WordPress Trac
noreply at wordpress.org
Wed Mar 4 10:40:05 UTC 2026
#64790: Connectors: Register as a dedicated admin page instead of a virtual submenu
page
--------------------------+--------------------
Reporter: gziolo | Owner: (none)
Type: defect (bug) | Status: new
Priority: normal | Milestone: 7.0
Component: Menus | Version: trunk
Severity: normal | Keywords:
Focuses: |
--------------------------+--------------------
The Connectors settings screen is currently registered as a virtual
submenu page under Settings, accessible at `wp-admin/options-
general.php?page=connectors-wp-admin`. It should be changed to a dedicated
options page with its own URL (e.g., `options-connectors.php`), consistent
with how other core settings pages are structured.
## Description
The Connectors screen was introduced in
[Gutenberg#75833](https://github.com/WordPress/gutenberg/pull/75833) and
further iterated on in
[Gutenberg#76014](https://github.com/WordPress/gutenberg/pull/76014).
During review, multiple contributors recommended moving away from the
virtual submenu page pattern toward a real options page.
### Current behavior
The page is registered using `add_submenu_page()` under `options-
general.php`, resulting in a URL like:
```
wp-admin/options-general.php?page=connectors-wp-admin
```
### Expected behavior
The page should be a first-class core settings page with a dedicated URL,
for example:
```
wp-admin/options-connectors.php
```
This is how all other core settings pages are structured: `options-
general.php`, `options-writing.php`, `options-reading.php`, `options-
discussion.php`, `options-media.php`, `options-privacy.php`, and `options-
permalink.php`.
### Reasons for the change
- **Consistency with core patterns.** Every existing core settings page
under the Settings menu has its own `options-*.php` URL. Virtual submenu
pages using query parameters (`?page=...`) are the pattern for plugin-
added settings pages, not core screens.
- **Clean URL for linking and redirects.** A dedicated URL is easier for
other code to reference, redirect to, or use in capability checks and
admin notices.
- **Long-term stability.** As a core settings page that plugins and
documentation will link to, a stable, short URL avoids churn and makes the
feature feel intentional rather than bolted on.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/64790>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list