Multisite adds blog IDs, mapped domains, quotas, and site-specific upload paths to the WordPress 7.1 client media pipeline. Offload code can upload the original or derivative under a network path that does not match attachment metadata or CDN rewriting.
Use this for agency networks, university multisites, franchise sites, publishers, mapped domains, object-storage media libraries, or any multisite where editors upload HEIC files from phones.
Quick answer
Upload the same HEIC fixture to the main site and two subsites, including a mapped domain. Record the client output, attachment metadata, local path, object key, CDN URL, and deletion lifecycle. Pass only when every site is isolated under the correct prefix and every derivative remains reachable.
What to check first
- Record network ID, blog ID, domain mapping, uploads option, quota, current user, browser, original HEIC metadata, and expected storage prefix.
- Test main site, path-based subsite, mapped-domain subsite, switched-blog upload, REST upload, Media Library upload, and featured-image use.
- Compare HEIC original handling, client output, AVIF or WebP derivatives, thumbnails, srcset, attachment metadata, and object keys.
- Run regenerate, replace, delete, site archive, site restore, and backup restore paths without using production media.
- Verify CDN host rewriting and cache purge preserve the correct site boundary and never expose another site's private or draft media.
Diagnostic table
Use this table to keep the work practical. It connects the symptom to evidence and a verification step.
| Action | Evidence to collect | How to verify |
| Define every multisite path boundary | Record network ID, blog ID, domain mapping, uploads option, quota, current user, browser, original HEIC metadata, and expected storage prefix. | Attachment metadata, object keys, and CDN URLs use the correct blog ID or site prefix. |
| Capture client and server artifacts | Test main site, path-based subsite, mapped-domain subsite, switched-blog upload, REST upload, Media Library upload, and featured-image use. | HEIC-derived formats return the intended MIME type and dimensions. |
| Test uploads in each site context | Compare HEIC original handling, client output, AVIF or WebP derivatives, thumbnails, srcset, attachment metadata, and object keys. | Deleting one site's fixture cannot remove another site's object. |
| Verify offload and CDN rewriting | Run regenerate, replace, delete, site archive, site restore, and backup restore paths without using production media. | Backup and restore recreate the same site-scoped references. |
Why this usually happens
- Offload plugins can compute a key before the correct blog context is restored.
- Mapped domains can hide the actual network uploads path.
- Client and server processors can generate different file names.
- Deletion callbacks may run after switch_to_blog context has changed.
Useful command or data shape
Adapt paths, IDs, and privacy handling to the site before running commands or storing data on production.
network_id: 1
blog_id: 17
mapped_domain: photos.example.test
source: iphone.heic
client_output: iphone.avif
object_key: sites/17/2026/07/iphone.avif
cdn_status: 200
other_site_access: not_referenced
delete_cleanup: complete
Safe fix order
Do the work in a sequence that makes each result easy to prove. Stop if a step produces new evidence that changes the incident scope.
- Define every multisite path boundary
- Capture client and server artifacts
- Test uploads in each site context
- Verify offload and CDN rewriting
- Exercise delete and restore lifecycle
Decision rule
Pass when each site stores and references its own complete derivative set, mapped domains resolve correctly, lifecycle operations use the right blog context, and no cross-site path or deletion occurs.
What to tell the client or owner
Give the owner the affected versions, exact workflow, observed result, business impact, evidence location, temporary control, named owner, and next review time. Remove credentials and personal data from shared screenshots and logs.
Production verification checklist
- Attachment metadata, object keys, and CDN URLs use the correct blog ID or site prefix.
- HEIC-derived formats return the intended MIME type and dimensions.
- Deleting one site's fixture cannot remove another site's object.
- Backup and restore recreate the same site-scoped references.
Mistakes to avoid
- Do not change several plugins, cache rules, or infrastructure settings before preserving a baseline.
- Do not treat one successful test as proof for retries, alternate clients, background work, or mixed-version fleets.
- Do not paste secrets, personal data, complete production payloads, or customer files into tickets or screenshots.
- Do not close the test until the final user-visible state and the server-side evidence agree.
Questions teams ask during testing
Does domain mapping change the uploads directory?
It can change public URLs without changing the underlying network path. Record both instead of inferring one from the other.
Should multisite keep the original HEIC file?
That is a policy and plugin decision. Test storage cost, future regeneration, browser fallback, privacy metadata, and restore requirements.
When HandL WP should help
Bring in HandL WP when a production checkout, form, email, media pipeline, code-quality gate, or paid lead workflow is at risk. We can preserve evidence, isolate the failing layer, make the smallest corrective change, and verify the result across WordPress, connected services, logs, and the user journey.
If this is active on a production site, test WordPress multisite media offload.
Related HandL WP guides
Use these related guides when the same issue touches tracking, security, checkout, or crawler visibility.
Helpful references