wp-client-side-media-processing
Installation
SKILL.md
WordPress Client-side Media Processing
WordPress 7.1 can resize, compress, rotate, convert, and create image derivatives in the browser before files are finalized on the server. Treat this as a second execution path, not as a transparent optimization: server image-editor hooks may not run, attachment metadata can be generated in stages, and the block editor may receive a Document-Isolation-Policy header.
When to use this skill
- A plugin filters image quality, formats, EXIF rotation, sub-size generation, or attachment metadata.
- Code hooks
wp_generate_attachment_metadata,intermediate_image_sizes_advanced,image_editor_output_format,wp_image_editors, orimage_make_intermediate_size. - An editor asset, CDN, analytics script, page builder, or media workflow fails only on WP 7.1.
- Code calls
/wp/v2/media, reads attachment REST fields, uploads external images, or replaces attachment files. - A CSP blocks
blob:workers or a cross-origin editor dependency stops loading.
Model both processing paths
| Path | Processing location | Important consequence |
|---|---|---|
| Server fallback | GD/Imagick on the server | Traditional server image hooks run. |
| WP 7.1 client path | Browser, then REST sideload/finalize | Some server-only hooks never run; metadata arrives in stages. |