Media files uploaded to a WordPress production environment are automatically shared with and available to associated non-production environments. This eliminates the need to copy media between environments as long as the development workflow follows code moving up, and content moving down.
Once uploaded to a production environment, a media file can load at a URL with the domain of any of an application’s environments, as long as it has the same file path beginning with
As an example, if a file is uploaded to an application’s production environment and available at this URL:
The application’s non-production environment will also have access to that image at this URL:
Additional default behavior:
- Shared media files follow the same caching rules on all application environments.
- Shared media files are read-only when accessed from non-production environments, protecting them from being altered unintentionally.
- It is possible for a non-production environment to upload a file that has the same name and path as a file shared by production. In that case, the site will only override the file on the non-production environment, and the original file uploaded to production remains intact.
- Files can only be shared from a production environment to its associated non-production environments. Files uploaded to a non-production environment cannot be shared with the production environment.
- The non-production environment cannot delete a file originally uploaded to the production site. The operation will not error, but the production file will not be affected and will remain available.
- If a file uploaded to production is deleted, it will no longer be available to non-production environments.
Shared media files and the WordPress Media Library
Media files that are uploaded to a site’s WordPress Media Library have attachment data that is stored in the site’s database. Media files will not appear in a site’s WordPress media library unless that attachment data exists in the database.
Though media files are automatically shared from a production environment to a non-production environment, a data sync from a production environment to a non-production environment must occur in order for the WordPress Media Library of the non-production environment to load the media files as expected.
Last updated: December 26, 2023