{"id":273559,"date":"2026-03-04T18:11:19","date_gmt":"2026-03-04T18:11:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/cloud-auto-importer\/"},"modified":"2026-03-06T16:24:34","modified_gmt":"2026-03-06T16:24:34","slug":"michael-cloud-image-auto-importer","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/michael-cloud-image-auto-importer\/","author":23434036,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.7","stable_tag":"1.0.7","tested":"6.9.4","requires":"5.6","requires_php":"7.2","requires_plugins":null,"header_name":"Michael Cloud Image Auto Importer","header_author":"Michael Otieno","header_description":"Import images from Google Drive to WordPress Media Library. Connect your Google Drive, select a folder, and import images with alt text generation.","assets_banners_color":"","last_updated":"2026-03-06 16:24:34","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/support\/plugin\/michael-cloud-image-auto-importer\/","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":211,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.6":{"tag":"1.0.6","author":"mike17894","date":"2026-03-04 18:37:10"},"1.0.7":{"tag":"1.0.7","author":"mike17894","date":"2026-03-06 16:24:34"}},"upgrade_notice":{"1.0.7":"<ul>\n<li>Incresaed realiablility and effeciency<\/li>\n<li>Maintained WordPress.org compliance<\/li>\n<\/ul>","1.0.6":"<ul>\n<li>Fixed all the domain issues<\/li>\n<li>Recommended update for all users<\/li>\n<\/ul>","1.0.5":"<ul>\n<li>Added external services documentation<\/li>\n<li>Fixed variable prefix and text domain issues<\/li>\n<li>Recommended update for all users<\/li>\n<\/ul>","1.0.4":"<ul>\n<li>Added external services documentation<\/li>\n<li>Fixed all WordPress.org compliance issues<\/li>\n<li>Updated text domain to match plugin slug<\/li>\n<li>Added proper prefixes to all functions<\/li>\n<li>Recommended update for all users<\/li>\n<\/ul>","1.0.3":"<ul>\n<li>Major update for WordPress.org compliance<\/li>\n<li>Changed all prefixes from &#039;cai_&#039; to &#039;mcai_&#039;<\/li>\n<li>Improved security and sanitization<\/li>\n<li>No data migration needed for new installations<\/li>\n<\/ul>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.6","1.0.7"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"<strong>Main Import Interface<\/strong> \u2013 Connect Google Drive and start imports","2":"<strong>Import Progress<\/strong> \u2013 Real-time progress bar with live statistics","3":"<strong>Settings Page<\/strong> \u2013 Google API configuration and privacy settings","4":"<strong>Import Logs<\/strong> \u2013 Detailed history of all imports with success rates","5":"<strong>Setup Guide<\/strong> \u2013 Step-by-step setup instructions"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[618,17785,238319,233,205],"plugin_category":[50],"plugin_contributors":[257117],"plugin_business_model":[],"class_list":["post-273559","plugin","type-plugin","status-publish","hentry","plugin_tags-cloud","plugin_tags-google-drive","plugin_tags-image-import","plugin_tags-media-library","plugin_tags-photos","plugin_category-media","plugin_contributors-mike17894","plugin_committers-mike17894"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/michael-cloud-image-auto-importer.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Michael Cloud Image Auto Importer lets you import images from Google Drive straight into your WordPress Media Library.<br \/>\nIt is ideal for bloggers, photographers, and content creators who store their media in Google Drive.<\/p>\n\n<p>The plugin connects securely to your Google Drive account, allows you to select folders, and imports images in bulk while avoiding duplicates.<\/p>\n\n<p><strong>Key Features:<\/strong>\n* Secure Google Drive OAuth 2.0 integration\n* Bulk image import from Drive folders\n* Automatic duplicate detection using MD5 file hashes\n* SEO-friendly alt text generation from filenames\n* Optional image compression with quality control\n* Real-time import progress tracking\n* Detailed import logs with statistics\n* Privacy-focused design with explicit user consent\n* No usage limits, subscriptions, or trialware\n* WordPress.org compliant coding standards<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to Google Drive API (provided by Google LLC) to import images from Google Drive into your WordPress media library.<\/p>\n\n<p><strong>Service:<\/strong> Google Drive API\n<strong>Purpose:<\/strong> To browse, list, and download images from your Google Drive account\n<strong>Data Transmitted:<\/strong>\n- OAuth 2.0 authentication tokens (for API access)\n- File metadata (names, IDs, sizes, MIME types)\n- MD5 hashes of files (for duplicate detection)\n- File content when downloading images<\/p>\n\n<p><strong>When data is transmitted:<\/strong>\n- When you connect your Google Drive account\n- When browsing\/listing folders\n- When importing images<\/p>\n\n<p><strong>Service Provider Information:<\/strong>\n- Terms of Service: https:\/\/developers.google.com\/drive\/terms\n- Privacy Policy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p><strong>User Consent:<\/strong> 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.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li><strong>Secure Google Drive Integration<\/strong> \u2013 Uses official Google API with OAuth 2.0<\/li>\n<li><strong>Bulk Image Import<\/strong> \u2013 Import entire folders at once<\/li>\n<li><strong>Duplicate Detection<\/strong> \u2013 Uses MD5 file hashing to skip existing images<\/li>\n<li><strong>SEO Optimization<\/strong> \u2013 Auto-generates alt text from filenames<\/li>\n<li><strong>Image Compression<\/strong> \u2013 Optional compression with adjustable quality<\/li>\n<li><strong>Progress Tracking<\/strong> \u2013 Real-time progress bar and statistics<\/li>\n<li><strong>Import Logs<\/strong> \u2013 Detailed logs of all imports with success\/failure rates<\/li>\n<li><strong>Privacy First<\/strong> \u2013 Requires explicit consent before connecting to Google<\/li>\n<li><strong>No Limits<\/strong> \u2013 Import as many images as you need<\/li>\n<li><strong>Clean Design<\/strong> \u2013 Intuitive WordPress admin interface<\/li>\n<\/ul>\n\n<h3>How It Works<\/h3>\n\n<ol>\n<li><strong>Configure Settings<\/strong> \u2013 Enter Google API credentials in plugin settings<\/li>\n<li><strong>Grant Consent<\/strong> \u2013 Enable external connections (required for Google Drive)<\/li>\n<li><strong>Connect Drive<\/strong> \u2013 Authorize access to your Google Drive account<\/li>\n<li><strong>Import Images<\/strong> \u2013 Paste Google Drive folder URL and start import<\/li>\n<li><strong>Track Progress<\/strong> \u2013 Monitor real-time progress with detailed statistics<\/li>\n<\/ol>\n\n<h3>Privacy &amp; Security<\/h3>\n\n<ul>\n<li><strong>User Consent Required<\/strong> \u2013 Explicit opt-in required for Google Drive access<\/li>\n<li><strong>No Tracking<\/strong> \u2013 No analytics, ads, or user tracking<\/li>\n<li><strong>Direct Downloads<\/strong> \u2013 Images download directly to your server<\/li>\n<li><strong>Secure Storage<\/strong> \u2013 Google API credentials stored securely in WordPress database<\/li>\n<li><strong>No Third Parties<\/strong> \u2013 No external image processing services<\/li>\n<li><strong>Data Control<\/strong> \u2013 Option to remove all data on uninstall<\/li>\n<\/ul>\n\n<h3>Google API Setup<\/h3>\n\n<ol>\n<li><p><strong>Create Google Cloud Project<\/strong><\/p>\n\n<ul>\n<li>Visit <a href=\"https:\/\/console.cloud.google.com\/\">Google Cloud Console<\/a><\/li>\n<li>Create new project or select existing<\/li>\n<li>Name: \"Michael Cloud Image Auto Importer\"<\/li>\n<\/ul><\/li>\n<li><p><strong>Enable Google Drive API<\/strong><\/p>\n\n<ul>\n<li>Go to \"APIs &amp; Services\" \u2192 \"Library\"<\/li>\n<li>Search for \"Google Drive API\"<\/li>\n<li>Click \"Enable\"<\/li>\n<\/ul><\/li>\n<li><p><strong>Create OAuth 2.0 Credentials<\/strong><\/p>\n\n<ul>\n<li>Go to \"APIs &amp; Services\" \u2192 \"Credentials\"<\/li>\n<li>Click \"Create Credentials\" \u2192 \"OAuth client ID\"<\/li>\n<li>Application type: \"Web application\"<\/li>\n<li>Name: \"Cloud Auto Importer\"<\/li>\n<li>Authorized redirect URI: <code>[your-site]\/wp-admin\/admin.php?page=cloud-auto-importer<\/code><\/li>\n<\/ul><\/li>\n<li><p><strong>Configure Plugin<\/strong><\/p>\n\n<ul>\n<li>Copy \"Client ID\" and \"Client Secret\"<\/li>\n<li>Paste into plugin Settings page<\/li>\n<li>Save settings<\/li>\n<\/ul><\/li>\n<\/ol>\n\n<h3>Languages<\/h3>\n\n<ul>\n<li>English (default)<\/li>\n<li>Translations welcome \u2013 uses WordPress translation system<\/li>\n<li>Translation files: <code>\/languages\/<\/code><\/li>\n<li>Text Domain: michael-cloud-image-auto-importer<\/li>\n<\/ul>\n\n<h3>Credits<\/h3>\n\n<p><strong>Developed by:<\/strong> Michael Otieno (WordPress.org: mike17894)<br \/>\n<strong>Google API:<\/strong> Uses official Google APIs PHP Client Library<br \/>\n<strong>Coding Standards:<\/strong> Built following WordPress PHP, JS, and CSS coding standards<br \/>\n<strong>Privacy:<\/strong> No third-party tracking, analytics, or external services except Google Drive API as documented<br \/>\n<strong>License:<\/strong> 100% GPLv2+ compatible<\/p>\n\n<h3>Support<\/h3>\n\n<p>For support, please use the WordPress.org support forum:<br \/>\nhttps:\/\/wordpress.org\/support\/plugin\/michael-cloud-image-auto-importer\/<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the 'Michael Cloud Image Auto Importer' folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate the plugin through the Plugins menu in WordPress<\/li>\n<li>Go to <strong>Michael Cloud Image Auto Importer \u2192 Settings<\/strong><\/li>\n<li>Enter your Google API credentials (see Google API Setup below)<\/li>\n<li>Enable external connections consent<\/li>\n<li>Go to main page and connect Google Drive<\/li>\n<li>Start importing images<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20google%20cloud%20account%3F\"><h3>Do I need a Google Cloud account?<\/h3><\/dt>\n<dd><p>Yes. A Google Cloud account is required to create Drive API credentials. The account is free and includes generous API quotas.<\/p><\/dd>\n<dt id=\"is%20there%20a%20limit%20to%20how%20many%20images%20i%20can%20import%3F\"><h3>Is there a limit to how many images I can import?<\/h3><\/dt>\n<dd><p>No. There are no usage or import limits in the plugin. Your only limit is Google's API quota (which is very generous for personal use).<\/p><\/dd>\n<dt id=\"can%20i%20import%20images%20from%20shared%20folders%3F\"><h3>Can I import images from shared folders?<\/h3><\/dt>\n<dd><p>Yes. Any Google Drive folder you have access to (including shared folders) can be imported.<\/p><\/dd>\n<dt id=\"what%20image%20formats%20are%20supported%3F\"><h3>What image formats are supported?<\/h3><\/dt>\n<dd><p>JPG, JPEG, PNG, GIF, WebP, BMP, TIFF, TIF, and SVG.<\/p><\/dd>\n<dt id=\"are%20images%20compressed%20during%20import%3F\"><h3>Are images compressed during import?<\/h3><\/dt>\n<dd><p>Optional compression is available for JPG, PNG, and WebP images. You can adjust quality from 50-95%.<\/p><\/dd>\n<dt id=\"how%20are%20duplicate%20images%20handled%3F\"><h3>How are duplicate images handled?<\/h3><\/dt>\n<dd><p>Duplicates are detected using MD5 file hashing. If a file with the same hash already exists in your Media Library, it will be skipped.<\/p><\/dd>\n<dt id=\"is%20my%20data%20secure%3F\"><h3>Is my data secure?<\/h3><\/dt>\n<dd><p>Yes. Images download directly to your server. Google API credentials are stored in your WordPress database. No data is sent to third parties beyond the required Google Drive API connections documented in the External Services section.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20uninstall%20the%20plugin%3F\"><h3>What happens when I uninstall the plugin?<\/h3><\/dt>\n<dd><p>You can choose to keep or delete all plugin data during uninstall. This includes settings, logs, and import metadata.<\/p><\/dd>\n<dt id=\"does%20this%20work%20on%20multisite%3F\"><h3>Does this work on multisite?<\/h3><\/dt>\n<dd><p>Yes. The plugin is multisite compatible.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Incresaed realiablility and effeciency<\/li>\n<li>Maintained WordPress.org compliance<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Fixed text domain to match plugin slug (michael-cloud-image-auto-importer) to all files <\/li>\n<li>Updated all translation strings to use correct text domain<\/li>\n<li>Improved WordPress.org compliance<\/li>\n<li>Removed all the errors <\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Added comprehensive external services documentation for Google Drive API<\/li>\n<li>Fixed variable prefix consistency (changed $wpfilesystem to $wp_filesystem)<\/li>\n<li>Removed direct core file inclusion (wp-admin\/includes\/image.php)<\/li>\n<li>Fixed text domain to match plugin slug (michael-cloud-image-auto-importer)<\/li>\n<li>Updated all translation strings to use correct text domain<\/li>\n<li>Improved WordPress.org compliance<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Added external services documentation for Google Drive API<\/li>\n<li>Fixed prefix compliance: Changed 'cai_' to 'mcai_' (4+ characters)<\/li>\n<li>Fixed sanitization: Changed (bool) to wp_validate_boolean() for settings<\/li>\n<li>Removed direct file inclusion: wp-admin\/includes\/image.php<\/li>\n<li>Fixed file writing to plugin folder<\/li>\n<li>Added WordPress.org username to Contributors: mike17894<\/li>\n<li>Updated all AJAX actions to use mcai_ prefix<\/li>\n<li>Updated CSS\/JS class names and IDs<\/li>\n<li>Fixed database table name prefix<\/li>\n<li>Improved security and WordPress.org compliance<\/li>\n<li>Updated Google Drive integration class<\/li>\n<li>Enhanced error handling and logging<\/li>\n<li>Added proper text domain: michael-cloud-image-auto-importer<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Renaming the plugin to Michael cloud image auto importer<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fixed PHPCS warnings and coding standards issues<\/li>\n<li>Added proper escaping for all output<\/li>\n<li>Improved nonce verification and security checks<\/li>\n<li>Enhanced error handling in Google Drive integration<\/li>\n<li>Minor bug fixes and performance improvements<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fixed translation compatibility<\/li>\n<li>Improved alt text generation algorithm<\/li>\n<li>Added translators comments for all strings<\/li>\n<li>Enhanced image compression quality controls<\/li>\n<li>Fixed duplicate detection edge cases<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Google Drive API integration<\/li>\n<li>Bulk image importing<\/li>\n<li>MD5 duplicate detection<\/li>\n<li>Automatic alt text generation<\/li>\n<li>Optional image compression<\/li>\n<li>Import progress tracking<\/li>\n<li>Detailed import logs<\/li>\n<li>Privacy-first design<\/li>\n<\/ul>","raw_excerpt":"Import images from Google Drive directly into the WordPress Media Library with automatic alt text generation.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/273559","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=273559"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mike17894"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=273559"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=273559"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=273559"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=273559"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=273559"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=273559"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}