=== Tìm và sửa ảnh lỗi trong bài viết (Broken Image Scanner) ===
Contributors: ducmu
Tags: broken images, image scanner, 404 images, image fixer, bulk image update
Requires at least: 5.0
Tested up to: 6.9
Requires PHP: 7.0
Stable tag: 1.6.9
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

The Ultimate Tool to Find and Fix Broken Images seamlessly via AJAX batch processing.

== Description ==

Broken Image Scanner is the all-in-one solution that helps you seamlessly search, detect, and replace broken images across your entire WordPress site. Are you frustrated with old posts containing broken images (404, 503, or blocked resources)? This plugin will solve that for you.

Key Features:

Smart Scanning without Server Crashes: Utilizes advanced AJAX batch processing technology, ensuring your server never times out or overloads.

Detects All Types of URLs: Works flawlessly with internal Media library images and external source links.

Contextual Extraction: Displays 2 lines of text before and after the broken image, giving you context without ever needing to open the post editor.

Inline Image Fix & Bulk Actions: Replace broken URLs directly from the results table using the WP Media Library. Select multiple posts and hit "Save All" with a single click.

Powerful Filters: Narrow down your scan by specific Post Types, Categories, Tags, or Series.

Smart Skip Algorithm: Automatically skips posts that were scanned and flagged within the last 30 days to save precious processing time.

Bilingual Support (EN/VI): Automatically detects WordPress language to display English or Vietnamese. Includes a manual language toggle button that remembers user preference.

== Installation ==

After activation, navigate to the "Broken Image Scanner" menu in your WordPress Admin sidebar.

In the "Create New Scan Session" section, enter a session name for easy tracking.

Adjust the "Batch Size" (recommended: 5-10 posts) to prevent server overload.

Select a specific Post Type and apply Taxonomy filters (Categories, Tags) if you want to scan a specific area of your site.

Click "Create & Start Scan". The process will run via AJAX and log real-time activities.

To fix a broken image, enter a new image URL (or click the Library icon) next to the broken link, then click "Save this image", or select multiple posts and click "Save All".

== Frequently Asked Questions ==

= Why do I see "[SKIP 30 DAYS] Skipped..." in the Activity Log? =
To save processing time, the plugin automatically skips posts that were already scanned and marked as broken within the last 30 days in other sessions. If you want a fresh scan, click the "Restart Scan" button.

= Will this plugin slow down my website? =
Not at all. The scanning process is executed via background AJAX only when you keep the plugin's admin tab open. By breaking the process down into small batches (e.g., 5 posts/request), it prevents any performance hit on your live frontend.

= Is the Inline Fix feature safe for my content? =
Yes, it is highly safe. The plugin uses WordPress's native wp_update_post function and strict string replacement logic to ensure your HTML structure and content remain completely intact.

== Screenshots ==

Manage scan sessions, live progress bar, and real-time activity log.

View broken image results with contextual text and inline fix tools.

Advanced filters to narrow down scans by Post Types and Taxonomies.

== Changelog ==

= 1.6.9 =

Initial release on WordPress.org

Added Multi-language support (English & Vietnamese)

Added bulk inline image fixing