Pods
Pods is a WordPress framework for creating custom content types, custom fields, and relationships. WP Media Cloud works with Pods transparently — no configuration is needed. Pods stores file, image, and video field values as WordPress attachment IDs and resolves them through WordPress attachment functions, which WP Media Cloud already filters.
How they work together#
Pods stores file and image field values as WordPress attachment IDs in postmeta, or in a custom database table when the Table Storage component is enabled. In both cases the IDs are resolved to URLs through WordPress’s standard attachment functions. WP Media Cloud filters those functions at priority 99 and returns cloud storage or CDN URLs automatically. All Pods output paths that resolve media field values benefit from this:
- File field display via
PodsField_File::display() - Image output via the
pods_image()andpods_image_url()helper functions - Thumbnail generation in the Pods field item data builder
- Gallery shortcode output — Pods passes attachment IDs to the native WordPress gallery shortcode, which resolves URLs through WordPress attachment functions
Table Storage component#
When Pods Table Storage is enabled, Pods stores field values in a custom _pods_{pod_name} database table rather than in postmeta. WP Media Cloud does not interact with Pods’s storage layer — it only filters URL resolution functions. Table Storage has no impact on compatibility. CDN URLs are returned correctly regardless of whether Pods is using postmeta or table storage.
Avatar field type#
The Pods Avatar field type stores a WordPress user ID, not a media attachment ID. It is outside the scope of WP Media Cloud’s offload system. Avatar images managed through the Pods Avatar field type are not offloaded.
Configuration#
No configuration is required. WP Media Cloud detects Pods automatically via the PODS_VERSION constant and reports its status on the Integrations tab.
Troubleshooting#
Pods image field is showing a local URL
Confirm URL rewriting is enabled in WP Media Cloud > Settings. Also confirm the image has been offloaded by going to Media > Library, clicking the image, and checking its URL. If the URL shows the local site address the file has not been offloaded. Run the bulk migration tool to offload existing media.
Gallery output is not loading images from cloud storage
Pods passes attachment IDs to the WordPress gallery shortcode, which resolves each ID through WordPress attachment functions. WP Media Cloud filters those functions, so gallery images should load from cloud storage. If they are not, confirm each attachment in the gallery has been offloaded individually by checking the media library.
Table Storage is active and images are not resolving to CDN URLs
Table Storage changes where Pods stores field values, not how it resolves URLs. URL resolution still goes through WordPress attachment functions that WP Media Cloud filters. If CDN URLs are not being returned with Table Storage active, confirm the attachment has been offloaded and that URL rewriting is enabled in settings.