=== RSS Image Widget ===
Contributors: zackdesign
Donate link: https://zackdesign.biz/
Tags: rss, image, feed, widget, gallery
Requires at least: 6.0
Tested up to: 6.9.1
Stable tag: 3.0.0
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Display images from an RSS or Atom feed as a widget or block with a lightweight lightbox gallery.

== Description ==

RSS Image Widget fetches images from any RSS/Atom feed that uses enclosures and displays them in a responsive grid with a built-in lightbox. Works as both a classic widget and a Gutenberg block.

**Features:**

* **Widget + Block** — Use in sidebars (classic widget) or anywhere in the block editor
* **Lightweight** — No jQuery, no external CDN. Just a tiny vanilla JS lightbox (~2 KB)
* **Responsive grid** — CSS Grid layout adapts to any container width
* **Lazy loading** — Images use native browser lazy loading
* **Accessible** — Lightbox supports keyboard navigation (Escape to close)
* **Zero configuration** — Just add a feed URL and go

**Upgrading from v2.x:**

The Bootstrap classes (`row`, `col-xs-12`) and external Lightbox2 CDN have been replaced with clean semantic HTML, a responsive CSS Grid layout, and a bundled vanilla JS lightbox. If you had custom CSS targeting the old classes, you will need to update it to use the new `.rss-image-gallery` BEM classes.

== Installation ==

**As a block:**

1. In the block editor, click the + inserter and search for "RSS Image Gallery"
2. Enter your feed URL in the placeholder
3. Adjust the number of images in the block settings sidebar

**As a widget:**

1. Go to Appearance > Widgets
2. Add the "RSS Image Gallery" widget to a sidebar
3. Enter your feed URL and number of images

== Frequently Asked Questions ==

= Images aren't appearing =

Your feed must use enclosures to provide image URLs. Most photo feeds (Flickr, etc.) do this by default. If your feed doesn't use enclosures, this plugin won't find any images.

= Can I style the gallery? =

Yes. The gallery uses BEM-style classes: `.rss-image-gallery`, `.rss-image-gallery__item`, `.rss-image-gallery__image`, `.rss-image-gallery__caption`. The lightbox uses `.rss-lightbox`.

== Changelog ==

= 3.0.0 =

* New: Gutenberg block — "RSS Image Gallery" available in the block editor
* New: Responsive CSS Grid layout replaces Bootstrap classes
* New: Built-in vanilla JS lightbox replaces external Lightbox2 CDN dependency
* New: Lazy loading on all images
* New: Accessible lightbox with keyboard support (Escape to close)
* Removed: jQuery dependency
* Removed: External CDN dependency (cdnjs Lightbox2)
* Removed: Bootstrap HTML classes (col-xs-12, row, thumbnail)
* Changed: Uses WordPress fetch_feed() instead of direct SimplePie instantiation
* Changed: Assets only loaded when widget/block is on the page
* Changed: Requires WordPress 6.0+
* Security: Input sanitization and output escaping throughout

= 2.1.0 =

* PHP 8.x compatibility: replaced create_function() with anonymous function
* Fixed SimplePie include path for modern WordPress
* Replaced extract() with direct array access
* Removed dead $width code
* Security hardening: ABSPATH guard, output escaping, input sanitization

= 2.0.3 =

* Tested with WP 4.3.1
* Changed to PHP5-compatible classes

= 2.0.2 =

* Tested with WP 4.2.2

= 2.0.1 =

* Fix for PHP 5.3

= 2.0.0 =

* Now using Lightbox provided by CDN instead of Shadowbox
* Bootstrap-compatible classes and HTML
* SimplePie caches using the Wordpress upload directory if available

= 1.4.2 =

* Removal of PHP Thumb to remove thumbnail generation
* Removal of garbage collection function

= 1.4.1 =

* Updated the license requirements
* Tested in 3.3.2

= 1.4 =

* Now comes with Shadowbox for showing images in gallery
* Titles moved below image by default
* Clicking image shows the full size
* Clicking title sends you to the website
* Improved caching

= 1.3.1 =

* Intelligent garbage collection
* Width/Height resizing now settable in widget

= 1.3 =

* SimplePie dependency removed as it comes with WordPress 2.7+
* PHPThumb changed to latest version

= 1.2.1 =

* Change image_widget.tmpl to validated XHTML

= 1.2 =

* Uses WordPress 2.8 widget class — supports multiple instances

= 1.1 =

* Addition to admin of changeable title

= 1.0 =

* First release
