Image Source Test v2.0 · The Cake Avenue

Image Source Test

Test each image source below. Configure credentials, click Load, and verify images appear. Once confirmed, the working source feeds into the gallery page automatically.

☁️ Cloudinary Configuration

Not loaded
No API key needed — Cloudinary Search API is CORS-safe from the browser for public folders.
OneDrive sync: Cloudinary Dashboard → Settings → Import → Connect OneDrive → source: The Cake Avenue/Gallery → auto-sync ✓

📁 OneDrive — via WordPress Proxy

Not loaded
OneDrive requires a server-side proxy (OAuth token cannot be in browser JS).
See the HTML comments at the top for the full WP functions.php snippet.
Tip: Use Cloudinary’s OneDrive sync instead — you get CDN + AI tags for free.

🗂 Google Drive — Subfolder Browser

From the URL: drive.google.com/drive/folders/FOLDER_ID — this is your gallery parent folder.
Enter folder ID and API Key, then click Scan
Both the root folder and each subfolder must be shared as “Anyone with the link → Viewer”.
API Key: console.cloud.google.com → APIs & Services → Credentials → restrict to Google Drive API.

📸 Instagram Business — via WordPress Proxy

Not loaded
Requires Instagram Business account linked to a Facebook Page.
Access token valid 60 days — add a WP cron job to refresh it.
WP proxy endpoint format: returns array of {id, media_url, caption, timestamp}
▶ Show WordPress proxy snippet (functions.php)
add_action('rest_api_init', function(){
  register_rest_route('cakeavenue/v1', '/instagram-feed',
    ['methods'=>'GET','callback'=>'ca_get_instagram',
     'permission_callback'=>'__return_true']);
});

function ca_get_instagram(){
  $cached = get_transient('ca_instagram_feed');
  if($cached) return rest_ensure_response($cached);

  $token   = get_option('ca_instagram_token');
  $ig_id   = get_option('ca_instagram_user_id');
  $url     = 'https://graph.facebook.com/v18.0/'.$ig_id.'/media'
           . '?fields=id,media_type,media_url,thumbnail_url,caption,timestamp'
           . '&limit=20&access_token='.$token;

  $res     = wp_remote_get($url);
  $body    = json_decode(wp_remote_retrieve_body($res), true);
  $images  = array_filter($body['data']??[], function($p){
    return $p['media_type']==='IMAGE' || $p['media_type']==='CAROUSEL_ALBUM';
  });
  $result  = array_values($images);
  set_transient('ca_instagram_feed', $result, 6*HOUR_IN_SECS);
  return rest_ensure_response($result);
}

🖼 Google Photos — Album Browser

Add proxy URLs above, then click Scan albums
Name your Google Photos albums gallery-wedding, gallery-birthday etc.
The proxy auto-maps album names → category filter pills.
See the full WP functions.php snippet in the HTML comments above.

⚡ ImageKit — Media Library Browser

Enter URL Endpoint and Public API Key, then click Scan
Free tier: 20GB storage · 20GB bandwidth/month · AI auto-tagging included.
URL transforms applied automatically: WebP, resize, quality optimisation.
WP plugin: ImageKit for WordPress — auto-replaces WP Media Library URLs with ImageKit CDN.

Side-by-side comparison — v2.0

Feature ☁️ Cloudinary 🗂 Google Drive 🖼 Google Photos ⚡ ImageKit 📁 OneDrive 📸 Instagram
Free tier ✓ 25GB✓ 15GB ✓ Unlimited✓ 20GB ✓ 5GB✓ Posts
Works from browser (no server) ✓ Yes✓ Public folders ✗ Needs proxy✓ Public key ✗ Needs proxy✗ Needs proxy
Subfolder / album scan ✓ Folder API✓ Implemented ✓ ✓ Albums✓ Folder API ~ Via proxy✗ No
CDN + auto-resize ✓ Built-in✗ No ~ baseUrl params✓ URL transforms ✗ No~ Original only
Native AI image tagging ✓ Auto on upload✗ No ✗ No✓ Auto on upload ✗ No~ Caption only
Claude AI search ✓ Tags + name✓ Filename + cat ✓ Filename + cat✓ Tags + name (richest) ~ Via proxy~ Caption
OneDrive auto-sync ✓ Direct connector✗ No ✗ No~ Via Zapier/rclone ✓ Native✗ No
Token / key expiry ✓ No token✓ API key permanent ✗ OAuth refresh✓ Public key permanent ~ 1h (cron)✗ 60 days
WP plugin available ✓ Yes✗ No ✗ No✓ Yes (replaces Media URLs) ~ WP OneDrive Gallery~ Smash Balloon
Setup difficulty ✓ Easy ~20 min✓ Easy ~30 min ~ Medium ~1.5h✓ Easy ~25 min ~ Hard ~2h~ Hard ~2h
Best for Gallery + carouselExisting Drive library ✓ Phone/shoot uploadsGallery + richest AI search Backup / source“As seen on IG”

💡 Recommended path for The Cake Avenue — v2.0

Now (already working ✓): Google Drive subfolder scan + Claude AI search → ship immediately.
Step 2: Add ImageKit or Cloudinary as CDN layer — images serve faster, auto-WebP, resized.
Step 3: Enable AI auto-tagging in chosen CDN → search becomes richer (colours, textures, styles).
Step 4: Connect OneDrive → CDN auto-sync → zero manual upload workflow achieved.
Optional: Add Instagram strip separately for social proof on homepage.