EXMAGE – WordPress Image Links


Created: 12/2021

Latest updated: 03/2025 – Updated version: 1.0.23

By: VillaTheme

Thank you for purchasing our plugin. If you have any questions that are beyond the scope of this documentation, please feel free to request support at our Support Forum. Thanks so much!

Required

  1. WordPress 5.0+
  2. PHP 7.0+
  3. WooCommerce 7.0+

 

Download Plugin

Get the plugin installation package from your account download page and save it to your desktop.

Install & Active plugin

Go to PluginsAdd NewUpload PluginChoose file/ Select exmage-wordpress-image-links.zip / click “Install Now“/ click “Active plugin”.

You can learn how to install and use EXMAGE – WordPress Image Links through this video guide.

EXMAGE – WordPress Image Links helps you save storage by using external image/video URLs. These images are shown in Media library like normal images so that you can choose them for post/product featured image, WooCommerce product gallery… or everywhere that images are chosen from Media library.

 

IMPORTANT NOTICE:

  • This plugin only supports real image URLs that have correct image mime type. It does not support image URLs from an image hosting service

FEATURES

  • Add external images/videos by URL (e.g., from Imgur, YouTube, Vimeo).
  • Use external images in WooCommerce product galleries.
  • Support for replacing media even after the plugin is disabled
  • Set thumbnail for external videos
  • Set a featured video for blog posts or products
  • Shortcode to show external video directly
  • Edit/update the URL of external media
  • AI-generated ALT attributes based on image content and your configuration
  • “CDN Uploads” feature: Push your images/videos to your CDN instead of saving them on your server.
  • External image identification: External images are marked with a unique icon to distinguish them from locally stored attachments.
  • Full compatibility with WooCommerce and WordPress media features: External images are assigned an attachment ID, allowing you to use them anywhere in WordPress that supports Media Library images, including:
    • Post and product featured images
    • Post’s featured video
    • Product galleries
    • Variation images
    • Product category images
  • Filter external images in the Media Dashboard with three filtering options:
    • All External Images: View all externally hosted images.
    • Downloaded: See external images that have already been saved to your server.
    • Undownloaded: Identify external images still hosted externally and not yet downloaded.
  • Download external images: Convert external images into local files to improve site performance and ensure long-term availability.
  • Bulk download external images: Select multiple external images or use Select All to download them at once, automatically updating image paths.

 

 

Add an external media from Media library

Add an image URL from Media library such as Post/Product featured image.

For example:

Post featured image

 

 

On Classic Editor: 

 

 

If you enable Set thumbnail video option under Video settings, you can add an external video as a post’s featured video

 

 

 

Add URLs on the Media Library

Add URLs on the Media Library: You can add multiple image/video URLs at once on below the File upload on Upload New Media page

 

 

 

 

For videos, add featured images if you need in the media editing page:

 

 

After adding external files, they will be available under Media dashboard. You can:

  • Edit the external file URL
  • View original file
  • Download image to WordPress server as a common media file and make it editable. The image will be fetched and stored in your WordPress media library, replacing the external URL. You can not edit external images until you convert them to normal attachments.

 

 

Filter external images and Bulk Download

On the Media dashboard, you can:

 

Filtering External Images

Easily identify and manage images that are hosted externally:

  • Navigate to Media dashboard in your WordPress admin panel, switch it to List view
  • Use the External Images Filter to display
    • All external images: Displays every external image used on your site, whether downloaded or still hosted externally
    • Downloaded: Shows external images that have already been saved to your server, replacing their external URLs with local file paths. These images are now part of your WordPress media library
    • Undownloaded: Lists external images that are still hosted externally and have not yet been downloaded to your site. This helps you identify which images need to be fetched
  • Search and sort external images based on file name, source URL, or usage in product/pages.

 

 

Bulk Downloading External Images

You can use this feature after filtering images. It saves time by downloading multiple external images at once:

In the Media Dashboard, select multiple external images or use the Select All option.

 

 

Icon to distinguish external images 

You can distinguish between external images and normal attachments by the icon.

In Grid view

 

 

In list view

 

 

General

These settings control the core behavior of Exmage, especially how it handles media when the plugin is no longer active.

  1. Enable: Activate this option to turn on the Exmage plugin and its features.
  2. Enable Replace media after deactivated: When enabled, this option allows Exmage to replace images uploaded through the plugin with alternative images after the plugin has been deactivated. This ensures your site doesn’t break or show missing images if Exmage is turned off. Helps maintain image visibility and layout consistency.
  3. Placeholder image: If Enable Replace media after deactivated is on, select a fallback image that will be shown in place of any Exmage-uploaded media after the plugin is deactivated. This image serves as a temporary replacement to prevent broken visuals on your site. Can be a logo, default thumbnail, or any relevant image from your Media Library.

 

 

Video

EXMAGE allows you to work with external videos by enhancing your media handling capabilities. These settings give you more control over how videos are displayed on your site.

  1. Enable: Turn this option on to activate video-related features in EXMAGE. You’ll be able to add external videos using external video URLs (e.g., YouTube, Vimeo).
  2. Enable Set thumbnail video: Enable this to allow setting a thumbnail/featured image for your external videos. If a video (Youtube, Vimeo,…) already has a thumbnail, that thumbnail will be uploaded to EXMAGE using its initial link as the video’s featured image.
  3. Enable Set Feature Video For Post: Turn this on to set a featured video (instead of an image) for posts.

 

 

AI Engine

This feature allows Exmage to automatically generate ALT text for images using AI models like ChatGPT (via OpenAI API) or Gemini (via Google AI API). It helps improve SEO, accessibility, and image context by creating meaningful ALT descriptions based on the image content and your custom settings.

  • AI Model: Choose the AI model you want to use for generating ALT text
  • Open AI API Key (Chat GPT)/ Google AI API Key (Gemini): Enter your Gemini (Google AI) key or your OpenAI key (for ChatGPT models)
    • Google AI API key:
      • Go to https://ai.google.dev/gemini-api
      • Select “Get an API key from Google AI Studio”
      • Click “Create API key“
      • Then, configure your key. And copy the key and paste it to this field
    • Open AI API key
      • Login and access API Keys page of OpenAI: https://platform.openai.com/settings/organization/api-keys
      • Create and copy the key
  • Test AI Engine: Click this button to send a sample image and preview the AI-generated ALT text based on your current settings. Make sure your API key has valid billing and quota access

 

ALT Text Instructions

EXMAGE will create ALT attributes using AI, based on the image content and the settings you’ve configured below. These settings let you fine-tune the output of the AI-generated ALT text:

  1. No alt-text images only: Enable this to skip images that already have ALT text, so only empty images are processed. This option works with “Generator Alt all Exmage” button.
  2. Min characters: Set the minimum length (in characters) of the generated ALT text. Helps avoid overly short or vague descriptions.
  3. Max characters: Set the maximum length of the output. Keeps descriptions concise and within HTML attribute limits.
  4. Writing style: Choose how you want the ALT text to be written – for example, “casual”, “professional”, “descriptive”, etc.
  5. Writing tone: Select the tone – such as “neutral”, “friendly”, “formal”, etc. – depending on your brand voice or use case.
  6. “Alt Image” prompt: Customize the prompt sent to the AI to shape the output.
    • You can include text along with shortcodes/placeholders like:
      • Shortcode {image_url} : is image url
      • Shortcode {MIN_CHARACTERS} : is min characters
      • Shortcode {MAX_CHARACTERS} : is max characters
      • Shortcode {WRITING_STYLE} : is writing style
      • Shortcode {WRITING_TONE} : is writing tone
    • Example: With the sample prompt in the image above – This prompt tells the AI to generate SEO-friendly alt text by analyzing the image at the {image_url} placeholder. The generated text must stay within the character range defined by {MIN_CHARACTERS} – {MAX_CHARACTERS}, follow the selected writing style (e.g. descriptive, clear, SEO-optimized as shown in the screenshot or set in the “Writing style” field), and use the tone you’ve chosen (e.g. neutral, informative, or any custom tone defined).

 

After configuring, you can start generating alt text for your media files as needed. Note that, to use the “Generator Alt all Exmage”, you have to select at least one media file.

 

 

CND Uploads

This feature replaces WordPress’s default upload behavior. Instead of uploading your media files to your server, EXMAGE will automatically upload them to a selected third-party CDN. This reduces your server’s storage and workload, speeds up delivery, and improves global performance by serving images from CDN endpoints.

You can choose from 3 supported CDNs:

1. Cloudinary: Cloudinary is a popular image CDN with built-in optimization and transformation features.

Required Credentials:

  • Cloudinary API Key
  • Cloudinary API Secret
  • Cloudinary Cloud Name
  • Cloudinary Upload Preset

How to Get These:

  • Go to https://cloudinary.com and sign in.
  • From the Cloudinary Dashboard under Settings → API, you’ll find:
    • API Key
    • API Secret
    • Cloud Name – shown in Settings → API section
  • To create an Upload Preset:
    • Go to Settings > Upload > Upload Presets
    • Click Add upload preset, configure it, and save.
    • Copy the preset name into the EXMAGE setting.

 

2. Cloudflare: This option uses Cloudflare R2 with direct image delivery via Cloudflare’s CDN.

Required Credentials:

  • Cloudflare Account ID
  • Cloudflare Access Key
  • Cloudflare Secret Key
  • Cloudflare Bucket Name
  • Cloudflare Public Development URL (URL to access the uploaded media)

How to Get These:

  • Log in at https://dash.cloudflare.com.
  • Navigate to R2 > Buckets:
    • Create a bucket if needed
    • Copy the Bucket Name
  • Go to My Profile > API Tokens > Create Token:
    • Choose “Edit Cloudflare R2 Storage Buckets”
    • Save the generated Access Key and Secret Key
  • Your Account ID is visible on the Dashboard > Overview page.
  • To get the Public Development URL, go to the bucket and check the Settings or Public URL tab.

 

3. AWS Amazon: Amazon S3 is a powerful and scalable storage service, and EXMAGE can upload directly to your S3 bucket.

Required Credentials:

  • AWS Amazon Access Key
  • AWS Amazon Secret Key
  • AWS Amazon Bucket Name
  • AWS Amazon Region Name (e.g., us-east-1)

How to Get These:

  • Log in to the AWS Console: https://console.aws.amazon.com/console/home/
  • Go to IAM > Users, and create or use an existing user:
    • Assign programmatic access
    • Attach the AmazonS3FullAccess policy (or a more limited one you define)
    • Save the Access Key ID and Secret Access Key
  • Go to S3 > Buckets:
    • Create a bucket or use an existing one
    • Copy the bucket name
  • The region name is shown when viewing the bucket (e.g., ap-southeast-1)

 

After configuring all the required creds, you can upload media to the selected CDN

 

 

Integration

if(class_exists( 'EXMAGE_WP_IMAGE_LINKS' )){
$add_image = EXMAGE_WP_IMAGE_LINKS::add_image( $url, $image_id, $post_parent );
}

-$url: URL of the image you want to process
-$image_id: Passed by reference
-$post_parent: ID of the post that you want the image to be attached to. If empty, the image will not be attached to any post

This plugin is tested compatibility some plugins:

WooCommerce By Automattic

ALD – Aliexpress Dropshipping and Fulfillment for WooCommerce By VillaTheme.

When activating both plugins, the option “Use external links for image” will appear in the Product tab of the ALD plugin to let you choose. If you enable it, the original AliExpress image URL is saved on that external storage plugin, which helps to save your website storage space.

Extra Information


Thank you for your attention!

If you have any question, please create a topic at our FORUM, we will support within 24 hours.