=== Async Image Credits – Lightweight automatic image credits ===
Contributors: matteoenna, mywinerepository
Tags: image credit, media, overlay, attribution, shortcode  
Donate link: https://www.paypal.me/matteoedev/2.55
License URI: http://www.gnu.org/licenses/gpl.html
Requires at least: 5.0
Requires PHP: 7.2.5
Tested up to: 7.1
Stable tag: 1.3.0
License: GPLv2 or later

Add visible credits to media images using JavaScript and configurable templates. Works automatically and includes a shortcode.

== Description ==

Media Image Credits is a lightweight WordPress plugin that allows you to:

- Assign credits to each image in your Media Library
- Automatically display them on the frontend using JavaScript
- Choose the display style: below the image, overlay, top-right, info icon, or small text
- Disable display if needed
- Output a complete list of all image credits with a `[image_credits_list]` shortcode

**Perfect for blogs, magazines and editorial sites that need proper image attribution.**

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/`
2. Activate the plugin through the ‘Plugins’ menu
3. Go to **Settings > Image Credits** to choose the display mode
4. Edit your Media Library images to add a credit
5. Use `[image_credits_list]` to display a full list of credits

== Screenshots ==

1. Field to enter image credit in Media Library
2. Overlay credit on image
3. Info icon with tooltip
4. Settings panel in admin
5. List of all image credits with shortcode

== Changelog ==

= 1.3.0 =
* Featured images now get credits too, including on themes that render them as a CSS background instead of an image tag. The featured image is resolved on the server via `get_post_thumbnail_id()`, so it no longer depends on the page markup.
* Added an optional CSS selector setting, for themes whose featured image container cannot be detected automatically.
* Added control over where credits appear: single posts and pages, homepage, archives, search results — plus a list of posts or pages to exclude by ID or slug. Excluded pages load neither the script nor the stylesheet.
* Fixed: overlay templates forced `position: relative` on containers that were already positioned by the theme's stylesheet.
* Fixed: script and stylesheet were versioned with a hardcoded string, so browsers could keep serving stale copies after an update.

= 1.2 =
* Added shortcode `[image_credits_list]`
* Added new template options: `topright`, `infoicon`, `disabled`
* Added i18n support
* Improved layout logic to avoid DOM breaking

= 1.1 =
* Added admin settings page
* Added multiple display templates

= 1.0 =
* Initial release

== Frequently Asked Questions ==

= Will this break my image layout? =  
No. The plugin adds overlays using non-invasive DOM positioning and avoids altering your image HTML structure.

= Can I customize the styles? =  
Yes! The plugin loads a CSS file you can override from your theme or extend directly.

= Is it compatible with lazy load? =  
Yes, the plugin uses a MutationObserver and image load events to support lazy-loaded images.

= Does it work on featured images? =  
Yes. The featured image of a single post or page is credited automatically, and because WordPress is asked for it directly rather than the credit being matched against the page markup, it works even when your theme paints the featured image as a CSS background. If your theme uses a custom hero container, set its CSS selector under Settings → Image Credits.

= Will credits show up in social media previews? =  
No. Credits are added with JavaScript after the page has loaded, while Facebook, X and LinkedIn read the raw HTML and the `og:image` tag, which this plugin never touches.

= Can I keep credits off the homepage? =  
Yes. Under Settings → Image Credits you can choose which contexts show credits — single posts and pages, homepage, archives, search results — and exclude individual posts or pages by ID or slug.

= Where do I get support? =  
Open an issue on GitHub or contact the author.
