Implement a custom cloud storage handler
Use the chamevo_storage_handler filter to redirect customer uploads and print-ready files to any cloud storage provider by implementing StorageHandlerInterface.
By default, Chamevo stores all files on the local WordPress filesystem under wp-content/uploads/chamevo/. The chamevo_storage_handler filter lets you redirect two folder types β customer uploads and generated print-ready files β to any external storage provider: Amazon S3, Hetzner Object Storage, Google Cloud Storage, Dropbox (programmatic), or any service with a PHP SDK.
The built-in Dropbox and AWS S3 delivery settings handle the most common cases without code. Use this API when you need a provider that is not built in, or when you need different buckets, CDN configurations, or business logic per folder type.
Scope
Only two folder types can be redirected to cloud storage:
| Folder type | Contents | Default local path |
|---|---|---|
uploads | Customer-uploaded files from the frontend customizer (images, PDFs, SVGs) | wp-content/uploads/chamevo/uploads/ |
print_files | Generated print-ready exports (PDF, PNG, SVG, ZIP) | wp-content/uploads/chamevo/print_files/ |
All other folders (_temp, fonts, 3d_models, patterns_svg, etc.) always remain local and cannot be redirected.
File flow
Files are always processed locally first, regardless of which storage handler is active: