Image Source Control


Did you ever forget to add the source to an image file in the frontend and the lawyer of the copyright holder knocked on your door?

Image Source Control (ISC) helps to prevent this situation.

github repository

I might not always be able to work on feature requests or fix buxes, but you can submit them to the github repository.
I will definitely review them there.

Image Sources Lists

You can choose between different image source list types:

  • source as image caption/overlay (not compatible with all themes)
  • source list below the content
  • combined source list of all images

Frontend Features

  • display sources for images in content, galleries, shortcodes and featured images
  • show image source directly in the image (not working with all images and themes)
  • include a list with all images and their sources of the current page/post
  • include a list with all images and their sources with all images or only those included in posts
  • attach lists be the content automatically or using shortcodes or template functions
  • display image sources on archive pages

Backend Features

  • manage image source within media dashboard and in the Image block settings
  • mark an image to belong to the uploader
  • lists images with missing sources in the backend
  • warnings, if image source is missing
  • link sources to any url
  • manage, display and link licences


English, German


Also have a look at the image source control website.

Find a list of images with missing sources under Media > Missing sources

automatic image sources

You can choose to display image sources automatically below the post content or as a small overlay above your images. Just visit the settings page of the plugin to enable those options.

manually included image sources on pages/posts

You can add the image source list manually to pages or post via the shortcode [isc_list] in your content editor. You can use [isc_list id="123] to show the list of any post or page.

You can also add the list with the function isc_list() within the loop in your template files. Use isc_list( $post_id ) to show the image source list outside the loop.

You should also check first if the function exists before using it:

list all image sources

You can add a paginated list with ALL attachments and sources to a post or page using the shortcode [isc_list_all]. Use [isc_list_all per_page="25"] to show only a limited number of images per page.

The plugin searches your post content and thumbnail for images (attachments) and lists them, if you included at least the image source or marked it as your own image.

Legal Notice

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


  • edit image source settings in the Image block
  • display a list with all images of your site and their sources
  • display image source within the image
  • some of the settings to customize how to display image sources


This section describes how to install the plugin and get it working.


  1. Upload wg-image-source-control-folder to the /wp-content/plugins/ directory
  2. Activate ISC through the ‘Plugins’ menu in WordPress
  3. Visit Settings > Image Control to set up the plugin

See the Instructions section here.


March 18, 2019
The Plugin works great and is very usefull. If you think about a PRO/Paid Version: I use the same Image Sources often so it would save me even more time if I could pick one from a dropdown boy and/or set a default. Kind regards
October 9, 2018
К сожалению не было времени проверить весь функционал, но вообще это то что нужно. Спасибо разработчику. Надеюсь что проект не заглохнет.
March 21, 2018
Ich habe lange nach einen passenden Plugin gesucht. Ziel war es für mich immer an einem Bild, dass nicht von mir ist eine passenden Bildnachweis unterzubringen. Das Plugin macht dies perfekt. Die manuelle Einbindung klappt wunderbar. Der Support des Entwicklers ist schnell und zuverlässig. Klasse. Besonders gelungen ist die Warnfunktion, die mir gut mitteilt, welche Bilder ich noch nicht mit einem Nachweis versehen habe. Die Bedienung ist einfach und unkompliziert. Folglich volle Punktzahl bei der Bewertung.
October 9, 2017
Genau dieses Plugin habe ich lange gesucht und es macht genau, was es soll. Danke sehr
Read all 21 reviews

Contributors & Developers

“Image Source Control” is open source software. The following people have contributed to this plugin.


“Image Source Control” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “Image Source Control” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • fix for block translations


  • added image source settings to Image block


  • changed licence string to licence to match en_US language base
  • extended list of copyright licences


  • fixed issue using [isc_list] without overlays


  • removed additional output introduced in 1.9.3


  • fixed index error


  • prevent image source overlay on full image source list and below
  • optimized query of missing-sources check
  • only check for missing sources when an image was uploaded or once every 24 hours


  • prevent infinite loop for posts with automatic image source lists where images are not index yet
  • moved German translation to


  • delayed displaying source overlay by 100 ms to give images a chance to load their height
  • fixed wrong height of the overlay being used
  • fixed missing textdomain code to allow translations added through



Please reach out in case you are suddenly missing any image sources.

  • rewritten the way how images are detected in the content of the post or page
  • replaced use of image url with attachment ID where possible to lift some heavy loads
  • fix for image names including dimensions (e.g., 300×250)
  • works with version 2.4.0 of Gutenberg plugin
  • place overlay correctly even when page continues to shift after being loaded
  • load public JavaScript in footer by default
  • prevent saving ISC post meta information on non-public post types

  • fixed align value not being understood correctly

  • fixed missing index issue
  • call parent class in admin class constructor


  • cleanup
  • removed log spam introduced with 1.8.10
  • prevent SQL injection through crafted img src attributes

  • hotfix for php below 5.3


  • don’t list images attached to non-public posts in the full image list, when only visible images should be displayed, thanks to heiglandreas
  • added fallback to read images from galleries
  • added isc_get_image_by_url_query filter
  • fixed image list being empty due to autosave
  • read src from attribute according to dom documentation, thanks to heiglandreas
  • tested with WordPress 4.4 beta 4


  • rather use than error-log query


  • search for image urls regardless of their used protocol (http or https)

1.8.6 | 1.8.7

  • removed duplicate post links on full source list


  • fixed deprecated sanitize_url()


  • [feature] added option to display all images in the full list, not just those visible in posts
  • [fixed] default author text not showing up


  • [fixed] saving pre text for source overlay, thanks to maler.whick


  • [feature] show image sources for changed images
  • [feature] show image sources for images with query parameters


  • [fixed] set default value for new option to prevent error message


  • [feature] display image sources on archive pages (see settings)
  • [feature] use isc_thumbnail_source() to display thumbnail source in templates
  • [feature] added image sources for galleries and other shortcodes
  • updated German translation


  • [fixed] bug on ajax calls preventing the source fields to show up on ajax called pages in the dashboard
  • [fixed] bug on multisite update
  • [optimized] don’t hide setting boxes
  • [optimized] finished moving all publically needed function to its own class


  • [fixed] error message shown when list type settings was empty or unsaved
  • [fixed] source overlay showing if no image source was set for it
  • [optimized] trim source input


  • [fixed] source list function referring to the wrong plugin class


  • [optimized] manage different source display types on top of settings page
  • [optimized] renamed settings page to “Image Sources”
  • [removed] hiding source list elements in the frontend is no longer possible
  • [fixed] show source list not only below posts, but every other post type
  • [fixed] removed screenshots from main plugin files