[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fqxuNiqeyVrV2plNtWaz0G3w4Fl750uHkip7Ue-tJUk4":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":35,"analysis":142,"fingerprints":341},"michael-cloud-image-auto-importer","Michael Cloud Image Auto Importer","1.0.7","Michael Omondi","https:\u002F\u002Fprofiles.wordpress.org\u002Fmike17894\u002F","\u003Cp>Michael Cloud Image Auto Importer lets you import images from Google Drive straight into your WordPress Media Library.\u003Cbr \u002F>\nIt is ideal for bloggers, photographers, and content creators who store their media in Google Drive.\u003C\u002Fp>\n\u003Cp>The plugin connects securely to your Google Drive account, allows you to select folders, and imports images in bulk while avoiding duplicates.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key Features:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Secure Google Drive OAuth 2.0 integration\u003Cbr \u002F>\n* Bulk image import from Drive folders\u003Cbr \u002F>\n* Automatic duplicate detection using MD5 file hashes\u003Cbr \u002F>\n* SEO-friendly alt text generation from filenames\u003Cbr \u002F>\n* Optional image compression with quality control\u003Cbr \u002F>\n* Real-time import progress tracking\u003Cbr \u002F>\n* Detailed import logs with statistics\u003Cbr \u002F>\n* Privacy-focused design with explicit user consent\u003Cbr \u002F>\n* No usage limits, subscriptions, or trialware\u003Cbr \u002F>\n* WordPress.org compliant coding standards\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to Google Drive API (provided by Google LLC) to import images from Google Drive into your WordPress media library.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Service:\u003C\u002Fstrong> Google Drive API\u003Cbr \u002F>\n\u003Cstrong>Purpose:\u003C\u002Fstrong> To browse, list, and download images from your Google Drive account\u003Cbr \u002F>\n\u003Cstrong>Data Transmitted:\u003C\u002Fstrong>\u003Cbr \u002F>\n– OAuth 2.0 authentication tokens (for API access)\u003Cbr \u002F>\n– File metadata (names, IDs, sizes, MIME types)\u003Cbr \u002F>\n– MD5 hashes of files (for duplicate detection)\u003Cbr \u002F>\n– File content when downloading images\u003C\u002Fp>\n\u003Cp>\u003Cstrong>When data is transmitted:\u003C\u002Fstrong>\u003Cbr \u002F>\n– When you connect your Google Drive account\u003Cbr \u002F>\n– When browsing\u002Flisting folders\u003Cbr \u002F>\n– When importing images\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Service Provider Information:\u003C\u002Fstrong>\u003Cbr \u002F>\n– Terms of Service: https:\u002F\u002Fdevelopers.google.com\u002Fdrive\u002Fterms\u003Cbr \u002F>\n– Privacy Policy: https:\u002F\u002Fpolicies.google.com\u002Fprivacy\u003C\u002Fp>\n\u003Cp>\u003Cstrong>User Consent:\u003C\u002Fstrong> This plugin requires explicit user consent before making any connections to Google services. You must enable “External Connections” in the plugin settings before connecting to Google Drive.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Secure Google Drive Integration\u003C\u002Fstrong> – Uses official Google API with OAuth 2.0\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bulk Image Import\u003C\u002Fstrong> – Import entire folders at once\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Duplicate Detection\u003C\u002Fstrong> – Uses MD5 file hashing to skip existing images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>SEO Optimization\u003C\u002Fstrong> – Auto-generates alt text from filenames\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Image Compression\u003C\u002Fstrong> – Optional compression with adjustable quality\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Progress Tracking\u003C\u002Fstrong> – Real-time progress bar and statistics\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import Logs\u003C\u002Fstrong> – Detailed logs of all imports with success\u002Ffailure rates\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Privacy First\u003C\u002Fstrong> – Requires explicit consent before connecting to Google\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No Limits\u003C\u002Fstrong> – Import as many images as you need\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Clean Design\u003C\u002Fstrong> – Intuitive WordPress admin interface\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How It Works\u003C\u002Fh3>\n\u003Col>\n\u003Cli>\u003Cstrong>Configure Settings\u003C\u002Fstrong> – Enter Google API credentials in plugin settings\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Grant Consent\u003C\u002Fstrong> – Enable external connections (required for Google Drive)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Connect Drive\u003C\u002Fstrong> – Authorize access to your Google Drive account\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import Images\u003C\u002Fstrong> – Paste Google Drive folder URL and start import\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Track Progress\u003C\u002Fstrong> – Monitor real-time progress with detailed statistics\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Privacy & Security\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>User Consent Required\u003C\u002Fstrong> – Explicit opt-in required for Google Drive access\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No Tracking\u003C\u002Fstrong> – No analytics, ads, or user tracking\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Direct Downloads\u003C\u002Fstrong> – Images download directly to your server\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Secure Storage\u003C\u002Fstrong> – Google API credentials stored securely in WordPress database\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No Third Parties\u003C\u002Fstrong> – No external image processing services\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Data Control\u003C\u002Fstrong> – Option to remove all data on uninstall\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Google API Setup\u003C\u002Fh3>\n\u003Col>\n\u003Cli>\n\u003Cp>\u003Cstrong>Create Google Cloud Project\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Visit \u003Ca href=\"https:\u002F\u002Fconsole.cloud.google.com\u002F\" rel=\"nofollow ugc\">Google Cloud Console\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Create new project or select existing\u003C\u002Fli>\n\u003Cli>Name: “Michael Cloud Image Auto Importer”\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Enable Google Drive API\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Go to “APIs & Services” \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> “Library”\u003C\u002Fli>\n\u003Cli>Search for “Google Drive API”\u003C\u002Fli>\n\u003Cli>Click “Enable”\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Create OAuth 2.0 Credentials\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Go to “APIs & Services” \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> “Credentials”\u003C\u002Fli>\n\u003Cli>Click “Create Credentials” \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> “OAuth client ID”\u003C\u002Fli>\n\u003Cli>Application type: “Web application”\u003C\u002Fli>\n\u003Cli>Name: “Cloud Auto Importer”\u003C\u002Fli>\n\u003Cli>Authorized redirect URI: \u003Ccode>[your-site]\u002Fwp-admin\u002Fadmin.php?page=cloud-auto-importer\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Configure Plugin\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Copy “Client ID” and “Client Secret”\u003C\u002Fli>\n\u003Cli>Paste into plugin Settings page\u003C\u002Fli>\n\u003Cli>Save settings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Languages\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>English (default)\u003C\u002Fli>\n\u003Cli>Translations welcome – uses WordPress translation system\u003C\u002Fli>\n\u003Cli>Translation files: \u003Ccode>\u002Flanguages\u002F\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Text Domain: michael-cloud-image-auto-importer\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Developed by:\u003C\u002Fstrong> Michael Otieno (WordPress.org: mike17894)\u003Cbr \u002F>\n\u003Cstrong>Google API:\u003C\u002Fstrong> Uses official Google APIs PHP Client Library\u003Cbr \u002F>\n\u003Cstrong>Coding Standards:\u003C\u002Fstrong> Built following WordPress PHP, JS, and CSS coding standards\u003Cbr \u002F>\n\u003Cstrong>Privacy:\u003C\u002Fstrong> No third-party tracking, analytics, or external services except Google Drive API as documented\u003Cbr \u002F>\n\u003Cstrong>License:\u003C\u002Fstrong> 100% GPLv2+ compatible\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>For support, please use the WordPress.org support forum:\u003Cbr \u002F>\nhttps:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fmichael-cloud-image-auto-importer\u002F\u003C\u002Fp>\n","Import images from Google Drive directly into the WordPress Media Library with automatic alt text generation.",0,178,"2026-03-06T16:24:00.000Z","6.9.4","5.6","7.2",[18,19,20,21,22],"cloud","google-drive","image-import","media-library","photos","https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fmichael-cloud-image-auto-importer\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmichael-cloud-image-auto-importer.1.0.7.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":30,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},"mike17894",1,30,94,"2026-04-04T15:25:53.510Z",[36,61,81,103,121],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":46,"num_ratings":47,"last_updated":48,"tested_up_to":14,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":56,"download_link":57,"security_score":58,"vuln_count":59,"unpatched_count":11,"last_vuln_date":60,"fetched_at":27},"instant-images","Instant Images – One-click Image Uploads from Unsplash, Openverse, Pixabay, Pexels, and Giphy","7.1.0.1","connekthq","https:\u002F\u002Fprofiles.wordpress.org\u002Fconnekthq\u002F","\u003Cp>Instantly upload photos from Unsplash, Openverse, Pixabay, Pexels, and Giphy to your website all without ever leaving WordPress!\u003C\u002Fp>\n\u003Cp>Instant Images is the fastest way to find and upload high-quality, free stock images directly from inside WordPress.\u003C\u002Fp>\n\u003Cp>No downloads.\u003Cbr \u002F>\nNo switching tabs.\u003Cbr \u002F>\nNo copy-paste workflow.\u003C\u002Fp>\n\u003Cp>Just search, click, and your image is instantly added to your Media Library — properly processed and ready to use.\u003C\u002Fp>\n\u003Cp>Whether you’re building content, designing layouts, or prototyping a client site, Instant Images keeps you in your workflow and saves you time.\u003C\u002Fp>\n\u003Ch4>Supported Image Providers\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Funsplash.com\" rel=\"nofollow ugc\">Unsplash\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fopenverse\u002F\" rel=\"ugc\">Openverse\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fpixabay.com\" rel=\"nofollow ugc\">Pixabay\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fpexels.com\" rel=\"nofollow ugc\">Pexels\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fgiphy.com\" rel=\"nofollow ugc\">Giphy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Works seamlessly with the Block Editor, Media Modal, and popular page builders.\u003C\u002Fp>\n\u003C!--YouTube Error: bad URL entered-->\n\u003Cp>The perfect tool for users who want to save time and frustration by uploading images directly inside their WordPress installation and for developers who want to prototype and develop using real world imagery.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fgetinstantimages.com\" rel=\"nofollow ugc\">Visit Plugin Website\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Image Search\u003C\u002Fstrong> – The Instant Images search let’s you quickly find and upload images for any subject in a matter of seconds!\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Image Orientation\u003C\u002Fstrong> – Filter search results by landscape, portrait or square images.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Time Saver\u003C\u002Fstrong> – Quickly upload amazing stock photos without leaving the comfort of your WordPress admin.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme\u002FPlugin Developers\u003C\u002Fstrong> – A great tool for developers who want to prototype and develop using real world imagery.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Gutenberg\u003C\u002Fstrong> – Instant Images directly integrates with Gutenberg as a plugin sidebar.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Media Modal\u003C\u002Fstrong> – Instant Images is available as a tab in the WordPress Media Modal.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Page Builders\u003C\u002Fstrong> – Instant Images integrates with page builders such as Elementor, Beaver Builder, Brizy and Divi.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Edit Image Metadata\u003C\u002Fstrong> – Easily edit image filename, alt text and caption prior to uploading to your media library.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Accessibility\u003C\u002Fstrong> – Automatically include a relevant alt description for screen readers, visually reduced users, and SEO.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Easy to Use\u003C\u002Fstrong> – It couldn’t get much more simple, just click an image and it’s automatically uploaded to your media library for use on your site.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No Accounts Needed\u003C\u002Fstrong> – An account on any service provider is not required for use of this plugin. Just activate and you’re ready to go.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Add-ons\u003C\u002Fh4>\n\u003Ch3>Instant Images: Extended\u003C\u002Fh3>\n\u003Cp>Enhance Instant Images with powerful professional features.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Includes:\u003C\u002Fstrong>\u003Cbr \u002F>\n– Search History & Autocomplete.\u003Cbr \u002F>\n– Instant Images as a WordPress Block.\u003Cbr \u002F>\n– WordPress CLI Imports.\u003Cbr \u002F>\n– Batch Image Imports.\u003Cbr \u002F>\n– I’m Feeling Lucky WordPress Block.\u003Cbr \u002F>\n– Image Size Generator.\u003Cbr \u002F>\n– Instant Featured Images\u003Cbr \u002F>\n– Instagram-style image filters\u003Cbr \u002F>\n– Persistent search terms across providers.\u003Cbr \u002F>\n– And more…\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgetinstantimages.com\u002Fadd-ons\u002Fextended\u002F\" rel=\"nofollow ugc\">Learn More\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Proxy Server\u003C\u002Fh4>\n\u003Cp>Instant Images routes all API requests to service providers (Unsplash, Pexels, Pixabay, Openverse etc.) through our custom proxy server at \u003Ca href=\"https:\u002F\u002Fproxy.getinstantimages.com\" rel=\"nofollow ugc\">proxy.getinstantimages.com\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Maintaining a proxy server for Instant Images allows us to:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Protect API keys from public exposure.\u003C\u002Fli>\n\u003Cli>Normalize data from multiple providers.\u003C\u002Fli>\n\u003Cli>Improve compatibility and reliability across plugin versions.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Please take a moment and read our Terms of Use and Privacy Policy for when using our proxy service:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgetinstantimages.com\u002Fterms-of-use\u002F\" rel=\"nofollow ugc\">Terms of Use\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgetinstantimages.com\u002Fprivacy-policy\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How Can You Contribute?\u003C\u002Fh4>\n\u003Cp>Pull requests can be submitted via \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fdcooney\u002Finstant-images\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Website\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgetinstantimages.com\" rel=\"nofollow ugc\">https:\u002F\u002Fgetinstantimages.com\u003C\u002Fa>\u003C\u002Fp>\n","One-click uploads from Unsplash, Openverse, Pixabay, Pexels, and Giphy directly to your WordPress media library.",200000,2942295,96,59,"2026-02-13T13:27:00.000Z","6.0","",[52,21,53,54,55],"free-images","pixabay","stock-photos","unsplash","https:\u002F\u002Fconnekthq.com\u002Fplugins\u002Finstant-images\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Finstant-images.7.1.0.1.zip",98,3,"2024-01-29 00:00:00",{"slug":62,"name":63,"version":64,"author":65,"author_profile":66,"description":67,"short_description":68,"active_installs":69,"downloaded":70,"rating":33,"num_ratings":71,"last_updated":72,"tested_up_to":14,"requires_at_least":15,"requires_php":73,"tags":74,"homepage":79,"download_link":80,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"advanced-media-offloader","Advanced Media Offloader","4.4.1","Masoud Golchin","https:\u002F\u002Fprofiles.wordpress.org\u002Fmasoudin\u002F","\u003Cp>\u003Cstrong>Advanced Media Offloader\u003C\u002Fstrong> helps you optimize your WordPress media handling by automatically uploading your media files to S3-compatible cloud storage services.\u003C\u002Fp>\n\u003Cp>Struggling with server space limitations? Want to improve your site’s performance by serving media through a CDN? This plugin handles the technical work of migrating your media to the cloud, rewriting URLs, and maintaining compatibility with your existing content.\u003C\u002Fp>\n\u003Ch4>Key Benefits\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Reduce server storage requirements and costs\u003C\u002Fli>\n\u003Cli>Decrease server load when serving media files\u003C\u002Fli>\n\u003Cli>Improve global site loading speeds when combined with CDN services\u003C\u002Fli>\n\u003Cli>Maintain full compatibility with WordPress media functions\u003C\u002Fli>\n\u003Cli>No need to modify existing content – URLs are automatically rewritten\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Supported Cloud Providers\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Amazon S3\u003C\u002Fstrong> – The industry standard object storage service\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cloudflare R2\u003C\u002Fstrong> – S3-compatible storage with zero egress fees\u003C\u002Fli>\n\u003Cli>\u003Cstrong>DigitalOcean Spaces\u003C\u002Fstrong> – Simple object storage from DigitalOcean\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Backblaze B2\u003C\u002Fstrong> – Affordable S3-compatible storage with predictable pricing\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Wasabi\u003C\u002Fstrong> – Hot cloud storage with predictable pricing\u003C\u002Fli>\n\u003Cli>\u003Cstrong>MinIO\u003C\u002Fstrong> – Any S3-compatible storage (MinIO, OVHcloud Object Storage, Scaleway, Linode, Vultr, IBM COS, and more)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Not sure which provider to choose? Check our \u003Ca href=\"https:\u002F\u002Fwpfitter.com\u002Fblog\u002Fbest-cloud-storage-for-wordpress-media-pricing-comparison\u002F?utm_source=wp-plugin&utm_medium=readme&utm_campaign=advanced-media-offloader&utm_content=pricing-comparison\" rel=\"nofollow ugc\">cloud storage pricing comparison\u003C\u002Fa> for real-world cost breakdowns.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Automatic Offloading\u003C\u002Fstrong> – New media uploads are automatically sent to your cloud storage\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smart Policies\u003C\u002Fstrong> – Create advanced rules to control exactly which files are offloaded and when, giving you granular control over your storage. (\u003Ca href=\"https:\u002F\u002Fwpfitter.com\u002Fblog\u002Fimplementing-smart-retention-policies-with-advanced-media-offloader\u002F?utm_source=wp-plugin&utm_medium=readme&utm_campaign=advanced-media-offloader&utm_content=smart-policies\" rel=\"nofollow ugc\">Learn more\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bulk Migration & WP CLI\u003C\u002Fstrong> – Easily move existing media to the cloud with powerful command-line support for bulk operations and automation (\u003Ca href=\"https:\u002F\u002Fwpfitter.com\u002Fblog\u002Fadvmo-bulk-offload-with-wp-cli?utm_source=wp-plugin&utm_medium=readme&utm_campaign=advanced-media-offloader&utm_content=bulk-offload-cli\" rel=\"nofollow ugc\">Learn more\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Thumbnail Regeneration Compatibility\u003C\u002Fstrong> – Compatible with WP-CLI \u003Ccode>wp media regenerate\u003C\u002Fcode> command and the Regenerate Thumbnails plugin. Regenerated thumbnails automatically offload to cloud storage. Note: Not compatible with Full Cloud Migration retention policy.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smart URL Rewriting\u003C\u002Fstrong> – All media URLs are automatically rewritten to serve from cloud storage\u003C\u002Fli>\n\u003Cli>\u003Cstrong>File Versioning\u003C\u002Fstrong> – Add unique timestamps to media paths to prevent caching issues\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Flexible Retention\u003C\u002Fstrong> – Choose to keep local copies or remove them after successful offloading\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Mirror Deletion\u003C\u002Fstrong> – Optionally remove files from cloud storage when deleted from WordPress\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Custom Paths\u003C\u002Fstrong> – Configure custom path prefixes in your cloud storage\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Image Optimizer Compatibility\u003C\u002Fstrong> – Works with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwebp-uploads\u002F\" rel=\"ugc\">Modern Image Formats\u003C\u002Fa> (recommended), Imagify, and EWWW Image Optimizer. Optimized WebP and AVIF files are automatically offloaded alongside originals. (\u003Ca href=\"https:\u002F\u002Fwpfitter.com\u002Fblog\u002Fewww-imagify-support-added-to-advanced-media-offloader\u002F?utm_source=wp-plugin&utm_medium=readme&utm_campaign=advanced-media-offloader&utm_content=image-optimizer-compatibility\" rel=\"nofollow ugc\">Learn more\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Developer-Friendly\u003C\u002Fstrong> – Extensive action and filter hooks for extending functionality (\u003Ca href=\"https:\u002F\u002Fwpfitter.com\u002Fdocuments\u002Fadvanced-media-offloader\u002Fdevelopment-hooks\u002F?utm_source=wp-plugin&utm_medium=readme&utm_campaign=advanced-media-offloader&utm_content=developer-hooks\" rel=\"nofollow ugc\">View Documentation\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Developer Documentation\u003C\u002Fh4>\n\u003Cp>For developers looking to extend or customize the plugin behavior, we provide comprehensive documentation for all available hooks:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwpfitter.com\u002Fdocuments\u002Fadvanced-media-offloader\u002Fdevelopment-hooks\u002F?utm_source=wp-plugin&utm_medium=readme&utm_campaign=advanced-media-offloader&utm_content=developer-hooks\" rel=\"nofollow ugc\">View Developer Hooks Documentation \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan>\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Quick example – skip offloading files larger than 5MB:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter('advmo_should_offload_attachment', function($should_offload, $attachment_id) {\n    $file = get_attached_file($attachment_id);\n    if ($file && filesize($file) > 5 * 1024 * 1024) {\n        return false;\n    }\n    return $should_offload;\n}, 10, 2);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Configuration\u003C\u002Fh3>\n\u003Cp>For security, cloud provider credentials are stored in your \u003Ccode>wp-config.php\u003C\u002Fcode> file rather than the database.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> Domain and endpoint URLs will automatically be prefixed with \u003Ccode>https:\u002F\u002F\u003C\u002Fcode> if you don’t include it, but we recommend always including the full URL for clarity.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fdevelopers.cloudflare.com\u002Fr2\u002F\" rel=\"nofollow ugc\">Cloudflare R2\u003C\u002Fa> Configuration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>    define('ADVMO_CLOUDFLARE_R2_KEY', 'your-access-key');\n    define('ADVMO_CLOUDFLARE_R2_SECRET', 'your-secret-key');\n    define('ADVMO_CLOUDFLARE_R2_BUCKET', 'your-bucket-name');\n    define('ADVMO_CLOUDFLARE_R2_DOMAIN', 'your-domain-url');\n    define('ADVMO_CLOUDFLARE_R2_ENDPOINT', 'your-endpoint-url');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.digitalocean.com\u002Fproducts\u002Fspaces\" rel=\"nofollow ugc\">DigitalOcean Spaces\u003C\u002Fa> Configuration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>    define('ADVMO_DOS_KEY', 'your-access-key');\n    define('ADVMO_DOS_SECRET', 'your-secret-key');\n    define('ADVMO_DOS_BUCKET', 'your-bucket-name');\n    define('ADVMO_DOS_DOMAIN', 'your-domain-url');\n    define('ADVMO_DOS_ENDPOINT', 'your-endpoint-url');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmin.io\u002Fdocs\u002Fminio\u002Flinux\u002Fadministration\u002Fidentity-access-management\u002Fminio-user-management.html\" rel=\"nofollow ugc\">MinIO\u003C\u002Fa> Configuration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Use this for any storage that supports the S3 API via a custom endpoint (e.g., MinIO, OVHcloud Object Storage, Scaleway, Linode, Vultr, IBM COS). Select this if your provider isn’t listed separately.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>    define('ADVMO_MINIO_KEY', 'your-access-key');\n    define('ADVMO_MINIO_SECRET', 'your-secret-key');\n    define('ADVMO_MINIO_BUCKET', 'your-bucket-name');\n    define('ADVMO_MINIO_DOMAIN', 'your-domain-url');\n    define('ADVMO_MINIO_ENDPOINT', 'your-endpoint-url');\n    define('ADVMO_MINIO_PATH_STYLE_ENDPOINT', false); \u002F\u002F Optional. Set to true if your MinIO server requires path-style URLs (most self-hosted MinIO setups). Default is false.\n    define('ADVMO_MINIO_REGION', 'your-bucket-region'); \u002F\u002F Optional. Set your MinIO bucket region if needed. Default is 'us-east-1'.\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Faws.amazon.com\u002Fs3\u002F\" rel=\"nofollow ugc\">Amazon S3\u003C\u002Fa> Configuration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>    define('ADVMO_AWS_KEY', 'your-access-key');\n    define('ADVMO_AWS_SECRET', 'your-secret-key');\n    define('ADVMO_AWS_BUCKET', 'your-bucket-name');\n    define('ADVMO_AWS_REGION', 'your-bucket-region');\n    define('ADVMO_AWS_DOMAIN', 'your-domain-url');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.backblaze.com\u002Fapidocs\u002Fintroduction-to-the-s3-compatible-api\" rel=\"nofollow ugc\">Backblaze B2\u003C\u002Fa> Configuration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>    define('ADVMO_BACKBLAZE_B2_KEY', 'your-application-key-id');\n    define('ADVMO_BACKBLAZE_B2_SECRET', 'your-application-key');\n    define('ADVMO_BACKBLAZE_B2_BUCKET', 'your-bucket-name');\n    define('ADVMO_BACKBLAZE_B2_REGION', 'your-bucket-region');\n    define('ADVMO_BACKBLAZE_B2_DOMAIN', 'your-domain-url');\n    define('ADVMO_BACKBLAZE_B2_ENDPOINT', 'your-endpoint-url');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fdocs.wasabi.com\u002Fdocs\u002Fcreating-a-new-access-key\" rel=\"nofollow ugc\">Wasabi\u003C\u002Fa> Configuration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>    define('ADVMO_WASABI_KEY', 'your-access-key');\n    define('ADVMO_WASABI_SECRET', 'your-secret-key');\n    define('ADVMO_WASABI_BUCKET', 'your-bucket-name');\n    define('ADVMO_WASABI_REGION', 'your-bucket-region');\n    define('ADVMO_WASABI_DOMAIN', 'your-domain-url');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Using the S3 PHP SDK\u003C\u002Fh3>\n\u003Cp>The Advanced Media Offloader utilizes the AWS SDK for PHP to interact with S3-compatible cloud storage. This powerful SDK provides an easy-to-use API for managing your cloud storage operations, including file uploads, downloads, and more. The SDK is maintained by Amazon Web Services, ensuring high compatibility and performance with S3 services.\u003C\u002Fp>\n\u003Cp>For more information about the AWS SDK for PHP, visit:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Faws.amazon.com\u002Fsdk-for-php\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Faws.amazon.com\u002Fsdk-for-php\u002F\u003C\u002Fa>\u003C\u002Fp>\n","Save server space & speed up your site by automatically offloading media to Amazon S3, Cloudflare R2 & more.",3000,35528,42,"2026-03-11T11:11:00.000Z","8.1",[75,21,76,77,78],"cloudflare","offload","s3","storage","https:\u002F\u002Fwpfitter.com\u002Fplugins\u002Fadvanced-media-offloader\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadvanced-media-offloader.4.4.1.zip",{"slug":82,"name":83,"version":84,"author":83,"author_profile":85,"description":86,"short_description":87,"active_installs":88,"downloaded":89,"rating":90,"num_ratings":91,"last_updated":92,"tested_up_to":93,"requires_at_least":94,"requires_php":95,"tags":96,"homepage":100,"download_link":101,"security_score":102,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"stencil","Stencil","1.14.9","https:\u002F\u002Fprofiles.wordpress.org\u002Fgetstencil\u002F","\u003Cp>Stencil is the fastest way to create incredible visuals and increase your engagement on social media, blog posts, emails and presentations. Create images faster and easier than you ever imagined.\u003C\u002Fp>\n\u003Cp>With Stencil for WordPress, you can design images as you write posts without ever leaving the page!\u003C\u002Fp>\n\u003Cp>This 30-second video will show you what you can do with the Stencil plugin for WordPress:\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F6QkVdKyMhsE?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>\u003Cstrong>Just some of the major features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Powerful Image Editor\u003C\u002Fstrong> – Designed with simplicity in mind, Stencil is a powerful but lightweight image editor that never gets in your way.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>5,000,000+ Royalty-Free Stock Photos\u003C\u002Fstrong> – More royalty-free “CC0” images than you’ll know what to do with! Thousands of new photos added \u003Cem>every week\u003C\u002Fem>!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>3,100,000+ Icons & Graphics\u003C\u002Fstrong> – Beautiful icons right at your fingertips, royalty-free and safe to use however you want (personal or commercial).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>1,350+ Templates\u003C\u002Fstrong> – Create beautiful images even faster with our premium templates, ready to be edited.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Upload & Store Logos\u003C\u002Fstrong> – Upload & store every variation of your logo or different logos if you’re creating visuals for different brands. Add logos to your images instantly!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>4,700+ Google Fonts or upload your own\u003C\u002Fstrong> – Find the perfect font for your image by using any of Google’s thousands of web fonts! Or match your brand perfectly by uploading your own fonts directly to Stencil and use them in all your visuals.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>140+ Preset Sizes\u003C\u002Fstrong> – Perfect pre-loaded optimal sizes for social networks, ads, blog posts and more. Not enough? Create your own!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Instant Image Resizing\u003C\u002Fstrong> – Change the size of your image without ever leaving the page or reloading.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Unlimited Uploads\u003C\u002Fstrong> – Upload and use your own images in Stencil.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Favorites\u003C\u002Fstrong> – Keep all your favorite photos, icons, and templates for easy future access.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Image Filters\u003C\u002Fstrong> – Beautify your images with amazing filters.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Social Connections\u003C\u002Fstrong> – Share to Facebook, Twitter, Instagram and Pinterest.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Collections\u003C\u002Fstrong> – Create your own custom collections and keep everything in Stencil organized.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>More about Stencil:\u003C\u002Fstrong>\u003Cbr \u002F>\nWe designed Stencil to be the \u003Cem>fastest\u003C\u002Fem> way to design beautiful images and graphics for your website, blog, social media channels, podcast covers, eBook covers, Facebook, Twitter, Instagram, Pinterest, or YouTube channels.\u003C\u002Fp>\n\u003Cp>While other services (like Canva, PicMonkey, Vectr, Crello, BeFunky, Fotor, Snappa) and products (like Photoshop, Sketch, GIMP) are great for certain tasks, Stencil is the \u003Cem>fastest\u003C\u002Fem> way to get your images designed in a matter of minutes. If you’re looking for a great Canva alternative or PicMonkey alternative, Stencil is the one!\u003C\u002Fp>\n\u003Cp>We support \u003Cstrong>unlimited\u003C\u002Fstrong> uploads, meaning you can upload your entire collection of photos and graphics straight to Stencil for use. We support all the major image types (including JPEG, PNG, GIF, SVG, WebP), and you can always download any images you uploaded back down to your computer later on.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>More about the Stencil for WordPress plugin:\u003C\u002Fstrong>\u003Cbr \u002F>\nWhile Stencil on it’s own is an amazing service, we (like you) spend a lot of time in our WordPress Admin area writing up our newest blogs and announcements.\u003C\u002Fp>\n\u003Cp>Something we noticed while doing this is that it was a bit cumbersome switching tabs to Stencil to design our Featured Images for the blog post we were writing, download it, and then \u003Cem>re-uploading\u003C\u002Fem> into WordPress.\u003C\u002Fp>\n\u003Cp>So we design this simple to use (and install) plugin so that you can use Stencil \u003Cem>right\u003C\u002Fem> from your WordPress Admin area.\u003C\u002Fp>\n\u003Cp>This video will show you what that experience is like:\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F6QkVdKyMhsE?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n","The fastest and easiest way to design images as you write posts in WordPress. Millions of stock photos, premium icons & templates at your fingertips.",1000,47926,82,9,"2022-02-01T17:25:00.000Z","5.8.0","4.0","5.2.4",[97,98,99,21,22],"design","graphic-design","graphics","https:\u002F\u002Fgetstencil.com\u002Fstencil-for-wordpress","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fstencil.zip",85,{"slug":104,"name":105,"version":106,"author":107,"author_profile":108,"description":109,"short_description":110,"active_installs":111,"downloaded":112,"rating":33,"num_ratings":59,"last_updated":113,"tested_up_to":14,"requires_at_least":114,"requires_php":115,"tags":116,"homepage":119,"download_link":120,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"exif-caption","Exif Caption","3.10","Katsushi Kawamori","https:\u002F\u002Fprofiles.wordpress.org\u002Fkatsushi-kawamori\u002F","\u003Cp>Insert the Exif data to the caption of the media. Also replaced caption of content.\u003C\u002Fp>\n\u003Ch4>Exif\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Insert the Exif data to the caption of the media.\u003C\u002Fli>\n\u003Cli>Insert the Exif data to the alt of the media.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Logs\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Displays the last 100 logs.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Sibling plugin\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Can extend Exif tags with the following plugin.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-details\u002F\" rel=\"ugc\">Exif Details\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How it works\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fv_1y9PkdYQ4?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n","Insert the Exif data to the caption of the media. Also replaced caption of content.",700,25983,"2025-11-25T21:51:00.000Z","4.7","8.0",[117,118,21,22],"caption","exif","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-caption\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexif-caption.3.10.zip",{"slug":122,"name":123,"version":124,"author":125,"author_profile":126,"description":127,"short_description":128,"active_installs":129,"downloaded":130,"rating":11,"num_ratings":11,"last_updated":131,"tested_up_to":132,"requires_at_least":133,"requires_php":134,"tags":135,"homepage":50,"download_link":139,"security_score":46,"vuln_count":140,"unpatched_count":11,"last_vuln_date":141,"fetched_at":27},"url-image-importer","URL Image Importer","1.0.8","Infinite Uploads","https:\u002F\u002Fprofiles.wordpress.org\u002Fbww\u002F","\u003Cp>URL Image Importer allows you to effortlessly import images from URLs, CSV spreadsheets, or WordPress XML export files directly into your Media Library. Simply paste one or multiple image links, upload a CSV file, or import your WordPress export file—and it will handle the rest, importing them all with ease!\u003C\u002Fp>\n\u003Cp>The plugin fetches images directly from external links, validates them, and adds them to your Media Library—saving you time and effort. It’s perfect for quickly adding assets to your site without the hassle of downloading files to your computer and manually uploading them to WordPress.\u003C\u002Fp>\n\u003Ch3>URL Image Importer Plugin Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Import any image directly into your WordPress Media Library from a URL—no file uploads required.\u003C\u002Fli>\n\u003Cli>Import multiple images at once using a \u003Cstrong>CSV spreadsheet\u003C\u002Fstrong> with image URLs in bulk.\u003C\u002Fli>\n\u003Cli>Import from \u003Cstrong>WordPress XML export files\u003C\u002Fstrong> to restore or migrate images between sites.\u003C\u002Fli>\n\u003Cli>Works seamlessly with any hosting environment or server setup.\u003C\u002Fli>\n\u003Cli>Automatically validate and save images, ensuring they’re ready to use in your content.\u003C\u002Fli>\n\u003Cli>Get smart recommendations based on available space in your temporary uploads directory.\u003C\u002Fli>\n\u003Cli>Works with any server or hosting provider.\u003C\u002Fli>\n\u003Cli>Upload any size file directly to a connected Infinite Uploads cloud account.\u003C\u002Fli>\n\u003Cli>Uploads directory disk utility for quickly analyzing storage usage in your media library.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Import Images to your Media Library\u003C\u002Fh3>\n\u003Cp>Paste in a publicly accessible URL with a compatible file extension or upload a CSV\u002FXML file and enjoy media management ease.\u003C\u002Fp>\n\u003Ch3>Bulk Import Support\u003C\u002Fh3>\n\u003Cp>Allows you to paste multiple URLs, upload a CSV file, or use a WordPress XML export to import several images simultaneously without timing out. It processes one at a time, recursively importing them.\u003C\u002Fp>\n\u003Ch3>CSV Imports\u003C\u002Fh3>\n\u003Cp>Upload a CSV file containing one or more image URLs (and optional metadata). The plugin automatically processes each row and imports all valid images into your Media Library. Perfect for large-scale imports from spreadsheets or external asset lists.\u003C\u002Fp>\n\u003Ch3>XML Imports from WordPress Export Feature\u003C\u002Fh3>\n\u003Cp>Easily import images from a standard WordPress XML export file. The importer automatically parses the XML file, locates image URLs, and downloads them into your Media Library. This is ideal for restoring lost media or transferring content between sites.\u003C\u002Fp>\n\u003Ch3>Uploads Disk Utility\u003C\u002Fh3>\n\u003Cp>The URL Image Importer plugin includes a media library disk utility that shows a breakdown of the files in your uploads directory by type and size. See how many images, videos, archives, documents, code, and other files (like audio) there are and how much space they’re taking up.\u003C\u002Fp>\n\u003Ch3>FTP\u002FSFTP Client-free File Uploading\u003C\u002Fh3>\n\u003Cp>Upload files right to the WordPress media library from URLs without additional credentials and settings. Skip the protocol settings, server names, port numbers, usernames, long passwords, and private keys. Grab the image & paste the URL in!\u003C\u002Fp>\n\u003Ch3>Compatible with Big File Uploads\u003C\u002Fh3>\n\u003Cp>Bypass the upload limits on your server, set by your hosting provider, that prevent you from uploading large files to your media library.\u003C\u002Fp>\n\u003Ch3>Wanna make your media library infinitely scalable? Move your big files and uploads directory to the cloud.\u003C\u002Fh3>\n\u003Cp>Big File Uploads is built to work with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Finfinite-uploads\u002F\" rel=\"ugc\">Infinite Uploads\u003C\u002Fa> to make your site’s upload directory infinitely scalable. A large WordPress media library can slow down your server and run up the cost of bandwidth and storage with your hosting provider. Move your uploads directory to the Infinite Uploads cloud to save on storage and bandwidth and improve site performance and security. Learn more about \u003Ca href=\"https:\u002F\u002Finfiniteuploads.com\u002F?utm_source=wordpress.org&utm_medium=readme&utm_campaign=URLII_readme&utm_term=promo\" rel=\"nofollow ugc\">Infinite Uploads cloud storage and content delivery network\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Privacy\u003C\u002Fh3>\n\u003Cp>This plugin does not collect or share any data. Site admins can optionally subscribe to email updates which is subject to our \u003Ca href=\"https:\u002F\u002Finfiniteuploads.com\u002Fprivacy\u002F?utm_source=wordpress.org&utm_medium=readme&utm_campaign=bfu_readme&utm_term=privacy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>About Us\u003C\u002Fh3>\n\u003Cp>Infinite Uploads builds WordPress plugins and is a premium cloud storage provider and content delivery network (CDN) for all your WordPress media files. Learn more here:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Finfiniteuploads.com\u002F?utm_source=wordpress.org&utm_medium=readme&utm_campaign=bfu_readme&utm_term=about_us\" rel=\"nofollow ugc\">infiniteuploads.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Learn how to manage large files on our blog:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Finfiniteuploads.com\u002Fblog\u002F?utm_source=wordpress.org&utm_medium=readme&utm_campaign=URLII_readme&utm_term=blog\" rel=\"nofollow ugc\">Infinite Uploads Blog, Tips, Tricks, How-tos, and News\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Enjoy!\u003C\u002Fp>\n\u003Ch3>Contact and Credits\u003C\u002Fh3>\n\u003Cp>Maintained by the cloud architects and WordPress engineers at \u003Ca href=\"https:\u002F\u002Finfiniteuploads.com\u002F?utm_source=wordpress.org&utm_medium=readme&utm_campaign=URLII_readme&utm_term=credits\" rel=\"nofollow ugc\">Infinite Uploads\u003C\u002Fa>.\u003C\u002Fp>\n","Import images from URLs, CSV files, or WordPress XML exports directly into your WordPress Media Library to use across your entire site!",500,4129,"2025-12-29T20:47:00.000Z","6.7.5","5.3","7.4",[136,20,137,138,21],"csv-import","import-image","import-image-to-media-library","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Furl-image-importer.1.0.8.zip",2,"2026-01-05 15:33:33",{"attackSurface":143,"codeSignals":242,"taintFlows":263,"riskAssessment":334,"analyzedAt":340},{"hooks":144,"ajaxHandlers":206,"restRoutes":236,"shortcodes":237,"cronEvents":238,"entryPointCount":241,"unprotectedCount":11},[145,151,156,160,165,170,174,178,182,185,189,192,195,199,203],{"type":146,"name":147,"callback":148,"file":149,"line":150},"action","admin_notices","mcai_admin_notices","cloud-auto-importer.php",406,{"type":146,"name":152,"callback":153,"priority":154,"file":149,"line":155},"plugins_loaded","mcai_init_plugin",5,661,{"type":146,"name":157,"callback":158,"file":149,"line":159},"init","mcai_final_init",759,{"type":146,"name":161,"callback":162,"priority":163,"file":149,"line":164},"upgrader_process_complete","mcai_plugin_updated",10,783,{"type":146,"name":166,"callback":167,"file":168,"line":169},"admin_menu","add_menu","includes\\class-admin.php",187,{"type":146,"name":171,"callback":172,"file":168,"line":173},"admin_init","register_settings",188,{"type":146,"name":175,"callback":176,"file":168,"line":177},"admin_enqueue_scripts","enqueue_scripts",189,{"type":146,"name":179,"callback":180,"file":168,"line":181},"admin_post_mcai_disconnect_google","handle_disconnect_google",190,{"type":146,"name":147,"callback":183,"file":168,"line":184},"display_admin_notices",191,{"type":146,"name":171,"callback":186,"file":187,"line":188},"handle_oauth_callback","includes\\class-google-drive.php",73,{"type":146,"name":171,"callback":190,"file":187,"line":191},"check_google_connection_status",74,{"type":146,"name":157,"callback":193,"file":187,"line":194},"init_transient_tracking",77,{"type":146,"name":196,"callback":197,"file":187,"line":198},"wp","schedule_cleanup",80,{"type":146,"name":200,"callback":201,"file":187,"line":202},"mcai_cleanup_temp_files","cleanup_temp_files",81,{"type":146,"name":157,"callback":204,"file":187,"line":205},"init_filesystem",84,[207,213,217,221,225,229,232,234],{"action":208,"nopriv":209,"callback":210,"hasNonce":211,"hasCapCheck":211,"file":149,"line":212},"mcai_dismiss_notice",false,"mcai_ajax_dismiss_notice",true,476,{"action":214,"nopriv":209,"callback":215,"hasNonce":211,"hasCapCheck":211,"file":168,"line":216},"mcai_start_import","ajax_start_import",194,{"action":218,"nopriv":209,"callback":219,"hasNonce":211,"hasCapCheck":211,"file":168,"line":220},"mcai_get_import_status","ajax_get_import_status",195,{"action":222,"nopriv":209,"callback":223,"hasNonce":211,"hasCapCheck":211,"file":168,"line":224},"mcai_process_batch","ajax_process_batch",196,{"action":226,"nopriv":209,"callback":227,"hasNonce":211,"hasCapCheck":211,"file":168,"line":228},"mcai_get_import_stats","ajax_get_import_stats",197,{"action":222,"nopriv":209,"callback":223,"hasNonce":211,"hasCapCheck":211,"file":230,"line":231},"includes\\class-importer-core.php",45,{"action":218,"nopriv":209,"callback":219,"hasNonce":211,"hasCapCheck":211,"file":230,"line":233},46,{"action":214,"nopriv":209,"callback":215,"hasNonce":211,"hasCapCheck":211,"file":230,"line":235},47,[],[],[239],{"hook":200,"callback":200,"file":187,"line":240},125,8,{"dangerousFunctions":243,"sqlUsage":244,"outputEscaping":253,"fileOperations":59,"externalRequests":259,"nonceChecks":260,"capabilityChecks":261,"bundledLibraries":262},[],{"prepared":245,"raw":140,"locations":246},32,[247,250],{"file":149,"line":248,"context":249},379,"$wpdb->query() with variable interpolation",{"file":168,"line":251,"context":252},148,"$wpdb->get_row() with variable interpolation",{"escaped":254,"rawEcho":31,"locations":255},126,[256],{"file":168,"line":257,"context":258},764,"raw output",4,13,15,[],[264,282,290,301,309],{"entryPoint":265,"graph":266,"unsanitizedCount":11,"severity":281},"render_settings_page (includes\\class-admin.php:726)",{"nodes":267,"edges":279},[268,273],{"id":269,"type":270,"label":271,"file":168,"line":272},"n0","source","$_POST (x4)",740,{"id":274,"type":275,"label":276,"file":168,"line":277,"wp_function":278},"n1","sink","update_option() [Settings Manipulation]",741,"update_option",[280],{"from":269,"to":274,"sanitized":211},"low",{"entryPoint":283,"graph":284,"unsanitizedCount":11,"severity":281},"\u003Cclass-admin> (includes\\class-admin.php:0)",{"nodes":285,"edges":288},[286,287],{"id":269,"type":270,"label":271,"file":168,"line":272},{"id":274,"type":275,"label":276,"file":168,"line":277,"wp_function":278},[289],{"from":269,"to":274,"sanitized":211},{"entryPoint":291,"graph":292,"unsanitizedCount":11,"severity":281},"handle_oauth_callback (includes\\class-google-drive.php:201)",{"nodes":293,"edges":299},[294,297],{"id":269,"type":270,"label":295,"file":187,"line":296},"$_GET (x3)",223,{"id":274,"type":275,"label":276,"file":187,"line":298,"wp_function":278},243,[300],{"from":269,"to":274,"sanitized":211},{"entryPoint":302,"graph":303,"unsanitizedCount":11,"severity":281},"\u003Cclass-google-drive> (includes\\class-google-drive.php:0)",{"nodes":304,"edges":307},[305,306],{"id":269,"type":270,"label":295,"file":187,"line":296},{"id":274,"type":275,"label":276,"file":187,"line":298,"wp_function":278},[308],{"from":269,"to":274,"sanitized":211},{"entryPoint":310,"graph":311,"unsanitizedCount":31,"severity":333},"\u003Cclass-importer-core> (includes\\class-importer-core.php:0)",{"nodes":312,"edges":329},[313,316,320,323,327],{"id":269,"type":270,"label":314,"file":230,"line":315},"$_POST",572,{"id":274,"type":275,"label":317,"file":230,"line":318,"wp_function":319},"get_var() [SQLi]",806,"get_var",{"id":321,"type":270,"label":314,"file":230,"line":322},"n2",721,{"id":324,"type":325,"label":326,"file":230,"line":322},"n3","transform","→ update_import_log()",{"id":328,"type":275,"label":317,"file":230,"line":318,"wp_function":319},"n4",[330,331,332],{"from":269,"to":274,"sanitized":211},{"from":321,"to":324,"sanitized":209},{"from":324,"to":328,"sanitized":209},"high",{"summary":335,"deductions":336},"The plugin \"michael-cloud-image-auto-importer\" v1.0.7 exhibits a generally strong security posture based on the provided static analysis.  A significant strength is the near-perfect implementation of prepared statements for SQL queries and proper output escaping, minimizing risks of SQL injection and cross-site scripting. The presence of numerous nonce and capability checks further indicates an effort to secure its entry points.  However, a single taint flow identified with unsanitized paths, even if not classified as critical or high severity in this analysis, warrants attention as it represents a potential pathway for malicious data to be processed without adequate validation. The absence of any known vulnerabilities in its history is a positive indicator, suggesting a commitment to security or a lack of past exploits, but this should not be a substitute for ongoing vigilance.",[337],{"reason":338,"points":339},"Taint flow with unsanitized paths",12,"2026-03-17T06:42:42.965Z",{"wat":342,"direct":355},{"assetPaths":343,"generatorPatterns":348,"scriptPaths":349,"versionParams":350},[344,345,346,347],"\u002Fwp-content\u002Fplugins\u002Fmichael-cloud-image-auto-importer\u002Fcss\u002Fmcai-admin-style.css","\u002Fwp-content\u002Fplugins\u002Fmichael-cloud-image-auto-importer\u002Fcss\u002Fmcai-frontend-style.css","\u002Fwp-content\u002Fplugins\u002Fmichael-cloud-image-auto-importer\u002Fjs\u002Fmcai-admin.js","\u002Fwp-content\u002Fplugins\u002Fmichael-cloud-image-auto-importer\u002Fjs\u002Fmcai-frontend.js",[],[346,347],[351,352,353,354],"michael-cloud-image-auto-importer\u002Fcss\u002Fmcai-admin-style.css?ver=","michael-cloud-image-auto-importer\u002Fcss\u002Fmcai-frontend-style.css?ver=","michael-cloud-image-auto-importer\u002Fjs\u002Fmcai-admin.js?ver=","michael-cloud-image-auto-importer\u002Fjs\u002Fmcai-frontend.js?ver=",{"cssClasses":356,"htmlComments":358,"htmlAttributes":361,"restEndpoints":363,"jsGlobals":365,"shortcodeOutput":368},[357],"mcai-import-button",[359,360],"\u003C!-- MCAI: Google Drive Import Section -->","\u003C!-- MCAI: Google Drive Connection Status -->",[362],"data-mcai-google-drive-sync",[364],"\u002Fwp-json\u002Fmcai\u002Fv1\u002Fsync-google-drive",[366,367],"mcai_admin_vars","mcai_frontend_vars",[369],"[mcai_google_drive_importer]"]