Agent Skills: WordPress Knowledge Patch

WordPress

UncategorizedID: nevaberry/nevaberry-plugins/wordpress-knowledge-patch

Install this agent skill to your local

pnpm dlx add-skill https://github.com/Nevaberry/nevaberry-plugins/tree/HEAD/plugins/knowledge-patch/patches-codex/wordpress-knowledge-patch

Skill Files

Browse the full folder contents for wordpress-knowledge-patch.

Download Skill

Loading file tree…

plugins/knowledge-patch/patches-codex/wordpress-knowledge-patch/SKILL.md

Skill Metadata

Name
wordpress-knowledge-patch
Description
WordPress

WordPress Knowledge Patch

Load this skill when upgrading WordPress sites, plugins, themes, blocks, or editor integrations, or when implementing against the APIs described here. Use the quick references for compatibility-sensitive decisions and open the topic guide that matches the work at hand.

Reference index

| Reference | Topics | | --- | --- | | Runtime, upgrades, and security | PHP requirements, hashing, hooks, query and URL compatibility, dependency changes, corrective and security upgrades | | Blocks, patterns, and styles | Block registration and assets, editor iframe behavior, Core blocks, bindings, patterns, Global Styles | | Data and integration APIs | REST access, calendar and HTML processing, Field and view APIs, abilities, AI, connectors, interactivity, email | | Media and administration | Image handling, media workflows, SVG icons, roles, navigation, Site Editor and plugin-list extensibility | | Collaboration and editorial behavior | Notes, visibility controls, author notifications, Style Book, deferred features |

Breaking changes and migration checks

Meet the PHP runtime requirements

WordPress 6.8 installation and upgrade explicitly require the PHP hash extension. WordPress 7.0 raises the minimum PHP version to 7.4. WordPress 6.9 adds beta support for PHP 8.5 while retaining the older supported range.

Migrate the renamed transient action

WordPress 6.8 renames setted_transient to set_transient. Move extension listeners to the new action.

Prepare block code for the iframe editor

For new or updated blocks, WordPress 6.9 accepts only apiVersion 3 in the block.json schema and warns when version 1 or 2 blocks are registered.

WordPress 7.0 iframes the post editor when every inserted Block API block uses version 3 or newer. WordPress 7.1 enforces the iframe even with legacy meta boxes. Extension CSS and JavaScript must handle a separate editor document.

Recheck removed browser and asset behavior

WordPress 6.9 removes Internet Explorer conditional script and style loading. WordPress 7.0 permits scripts to depend on modules, removes HTML5 script theme support, and makes margin-free editor component styles the default.

Test query-dependent integrations

WordPress 6.9 changes WP_Query cache-key generation, although persistent object-cache drop-ins should remain compatible. Its get_adjacent_post() query changes require compatibility testing for Storefront-derived themes. Admin-menu search now uses parsed $_GET values instead of $_SERVER['QUERY_STRING'].

Account for bundled dependency updates

WordPress 7.0 updates Backbone to 1.6.1, Requests to 2.0.17, PHPMailer to 7.0.2, and the CodeMirror 5 lint stack, replacing Esprima with Espree. WordPress 7.1 updates jQuery UI to 1.14.2, which can change dependent plugin behavior or styling.

Security and corrective upgrades

Treat 7.0.2 as a forced security update

WordPress.org enabled forced automatic updates for sites affected by the critical and high-severity issues addressed in WordPress 7.0.2 instead of relying only on the normal update path.

Follow the 6.9 corrective sequence

WordPress 6.9.2 could leave the front end blank when themes passed stringable objects while loading template files. WordPress 6.9.3 addressed that regression. WordPress 6.9.4 was then required because some 6.9.2 security fixes had not been fully applied.

Apply safer role defaults

WordPress 7.0 excludes Administrator and Editor from the default-role selector and adds a Site Health warning for an existing unsafe selection. Use default_role_dropdown_excluded_roles to change the excluded role set.

Block and editor quick reference

Control block asset loading

WordPress 6.8 adds should_load_block_assets_on_demand to choose global or on-demand block CSS and JavaScript. It also warns about inline useSelect selectors that can cause excess renders. WordPress 6.9 applies on-demand block styles to Classic themes.

Register a PHP-only server-rendered block

In WordPress 7.0, declare 'supports' => array( 'autoRegister' => true ) with a render callback to register a server-rendered block without a separate client implementation. PHP-defined attributes are exposed to the editor and can receive generated DataForm inspector controls.

Configure Pattern Overrides and content-only editing

WordPress 6.9 adds block_bindings_supported_attributes_{$block_type} for controlling bindable attributes. In WordPress 7.0, Pattern Overrides work with custom and Core blocks through those supported attributes.

WordPress 7.0 applies contentOnly more broadly to unsynced patterns. Opt out with disableContentOnlyForUnsyncedPatterns or block_editor_settings_all. Declare content attributes with "role": "content" in block.json; use "listView": true support for a dedicated List View inspector tab.

Use newer block and style capabilities

WordPress 7.0 adds per-block custom CSS, textIndent, width, height, and minimum-height supports and presets, plus Button pseudo-element states in theme.json.

WordPress 7.1 adds background-gradient and minimum-width supports, responsive style variations with configurable viewports, pseudo and custom states, text shadows, and a design-token theming foundation.

API and integration quick reference

Expose and consume abilities

The WordPress 6.9 Abilities API lets Core, plugins, and themes register functionality in a standardized machine-readable form. WordPress 7.1 adds filtering to wp_get_abilities(), execution lifecycle hooks, a unified public exposure flag, and client-compatible JSON Schema preparation.

WordPress 7.0 adds @wordpress/core-abilities for fetching and registering server abilities through REST and @wordpress/abilities for client-side and hybrid abilities. The core/abilities store provides reactive useSelect access.

Use the AI client and connectors

WordPress 7.0 introduces a provider-agnostic AI client with centralized request routing and credentials. Plugins can order models with using_model_preference(), select by required capabilities, build calls with WP_AI_Client_Prompt_Builder, and use wordpress/wp-ai-client for transition compatibility.

The WordPress 7.0 Connectors API discovers providers from the AI Client registry and supplies the Settings > Connectors screen. Metadata supports api_key and none authentication. wp_connectors_init can override connector metadata; other authentication methods can use the PHP registry; client-side registration customizes the UI.

Use current Interactivity API behavior

WordPress 6.9 adds unique directive IDs and the router-region attachTo CSS-selector property. WordPress 7.0 adds signal-tracking watch() and the data-wp-watch lifecycle directive. Server directive processing populates state.url until the first client navigation.

Media, admin, and collaboration quick reference

Handle current media processing

WordPress 7.1 introduces client-side image processing before upload, REST dimension validation, size-aware encoding quality, and registration of one sideloaded file for multiple image sizes. The Media Library grid defaults to infinite scrolling, with a per-user pagination opt-out.

Support persistent cross-context navigation

WordPress 7.1 keeps the toolbar across supported front-end, admin, Site Editor, and Block Editor navigation. Extensions must handle client-side navigation and each context.

Respect editorial notifications and Notes

WordPress 6.9 adds threaded block Notes with resolution, editing, and post author email notification. WordPress 7.1 adds mentions and inline feedback. In WordPress 7.1, notify_post_author has final authority over whether post-author notifications are sent.

Do not assume deferred features shipped

In WordPress 7.1, the Classic block remains in the inserter, React 19 remains experimental outside Core, and real-time collaborative editing is not enabled.