[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f-HafiOjj4EKp9-i2Syr4KnkmQvQnAgST875J53E0cNQ":3,"$fFfwM2TzgngnQL0bc2b503tsmtCLCc173UsXgwSuTme8":588,"$f1WFaK2wqS_Bkq0MobpYQeIlm-1M03phGv1pCkA8Tjgk":592},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"discovery_status":28,"vulnerabilities":29,"developer":30,"crawl_stats":26,"alternatives":36,"analysis":121,"fingerprints":569},"beepbeep-ai-alt-text-generator","BeepBeep AI – Alt Text Generator","4.6.1","Benjamin Graham Oats","https:\u002F\u002Fprofiles.wordpress.org\u002Fbeepbeepv2\u002F","\u003Cp>BeepBeep AI is a WordPress AI alt text generator for site owners who want faster image SEO, stronger accessibility, and less manual work. It scans your WordPress Media Library and WooCommerce product images, finds missing or weak alt text, and helps you generate AI alt text in bulk from one clean workflow. Instead of editing image fields one by one, you can scan the library, bulk-generate descriptive alt text, review the results, and save approved changes back into WordPress.\u003C\u002Fp>\n\u003Cp>Better alt text helps search engines understand your images, supports Google Images and product discovery, and improves the experience for screen readers. That makes BeepBeep AI useful for bloggers, publishers, WooCommerce stores, agencies, SEO teams, and accessibility-focused site owners who need a practical alt text workflow inside wp-admin. Use one-click scans to identify missing alt text, process many images at once, review suggestions that need extra context, and optionally turn on automatic alt text for new uploads. The result is a faster path to cleaner image SEO, more consistent media library coverage, and better accessibility across your site.\u003C\u002Fp>\n\u003Ch4>Why site owners choose BeepBeep AI\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Bulk-generate WordPress alt text\u003C\u002Fstrong> so large media libraries can be cleaned up in minutes instead of image by image.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Improve image SEO with clearer descriptions\u003C\u002Fstrong> that help search engines understand posts, products, and category images.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Support accessibility and WCAG workflows\u003C\u002Fstrong> by finding missing alt text fast and reviewing AI suggestions before they go live.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Scan once, prioritise quickly, and act\u003C\u002Fstrong> with clear views for missing, needs review, and optimised images.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Keep humans in control\u003C\u002Fstrong> with edit, review, regenerate, and approve actions built into the workflow.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Optimise WooCommerce product images\u003C\u002Fstrong> across featured images and galleries without changing your theme or catalog setup.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automate future uploads\u003C\u002Fstrong> with optional AI alt text generation for new media.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Bulk AI alt text generation for WordPress\u003C\u002Fstrong> so you can update many images in one action instead of editing the media library one file at a time.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>One-click scan for missing alt text\u003C\u002Fstrong> to surface the images most likely to hurt accessibility and image SEO.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Review, edit, and regenerate workflow\u003C\u002Fstrong> that keeps quality high when AI suggestions need extra context.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Image SEO-focused output\u003C\u002Fstrong> designed to help Google Images and product search understand what each image shows.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce-ready optimisation\u003C\u002Fstrong> for product featured images, gallery images, and broader store content.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic alt text for new uploads\u003C\u002Fstrong> so future media stays covered without repeating the same cleanup process.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Clear dashboard, usage, and coverage views\u003C\u002Fstrong> so teams can track progress and prioritise the next fixes.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Native WordPress admin experience\u003C\u002Fstrong> that feels like a practical plugin workflow, not a disconnected external tool.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How it works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Scan your WordPress media library\u003C\u002Fstrong> to find missing alt text, weak descriptions, and optimisation opportunities.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Generate AI alt text in bulk\u003C\u002Fstrong> for the images you want to improve.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Review and edit suggestions\u003C\u002Fstrong> so the final text matches your content, products, and brand voice.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Save approved alt text\u003C\u002Fstrong> back to WordPress and keep your media library moving toward full coverage.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Turn on automatic optimisation\u003C\u002Fstrong> if you want new uploads to get AI alt text going forward.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Use cases\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Bloggers and publishers\u003C\u002Fstrong> who want faster image SEO improvements across existing posts and future uploads.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce stores\u003C\u002Fstrong> that need bulk alt text for product images, galleries, and category visuals.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Agencies and freelancers\u003C\u002Fstrong> managing multiple WordPress sites and large client media libraries.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>SEO teams\u003C\u002Fstrong> improving image discoverability and consistency across content and commerce pages.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Accessibility-focused site owners\u003C\u002Fstrong> improving image descriptions as part of broader WCAG and content quality work.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Why choose BeepBeep AI\u003C\u002Fh4>\n\u003Cp>BeepBeep AI is built for WordPress users who want the practical benefits of AI alt text without giving up review control. It focuses on the workflows that actually matter in wp-admin: scanning the media library, fixing images in bulk, reviewing edge cases, improving WooCommerce image coverage, and keeping future uploads organised. The result feels closer to a premium WordPress workflow than a generic AI tool bolted onto your site.\u003C\u002Fp>\n\u003Ch4>Free plan and paid options\u003C\u002Fh4>\n\u003Cp>Start with 10 trial generations and test the workflow before creating an account. The free plan includes 50 AI alt text generations per month. Paid plans unlock more volume, faster processing, and higher-capacity workflows for growing sites and stores.\u003C\u002Fp>\n\u003Ch4>Learn more\u003C\u002Fh4>\n\u003Cp>Want a deeper look at AI alt text workflows and alternatives for WordPress? \u003Ca href=\"https:\u002F\u002Foppti.dev\u002Falttext-ai-alternative\" rel=\"nofollow ugc\">Compare AI alt text options for WordPress\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Demo Video\u003C\u002Fh4>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FXK9snigPH2c?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>Development Notes\u003C\u002Fh3>\n\u003Cp>Non-minified source files are included in this plugin package in \u003Ccode>assets\u002Fsrc\u002F\u003C\u002Fcode> and \u003Ccode>admin\u002Fcomponents\u002F\u003C\u002Fcode>. Compiled assets are shipped in \u003Ccode>assets\u002Fdist\u002F\u003C\u002Fcode> and \u003Ccode>assets\u002Fcss\u002F\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to external APIs to generate image alt text and provide account\u002Fbilling features.\u003C\u002Fp>\n\u003Cp>Service: AltText AI Backend API (https:\u002F\u002Falttext-ai-backend.onrender.com)\u003Cbr \u002F>\nPurpose: Generate alt text descriptions, perform alt text review checks, and handle authentication, license, usage, billing, and contact requests.\u003Cbr \u002F>\nWhen: When you generate\u002Freview alt text, authenticate, view usage\u002Faccount data, manage billing, or submit a support\u002Fcontact request.\u003Cbr \u002F>\nData sent: Image metadata and image content (image URL or base64), image context (title, caption, filename, optional parent post title), site URL\u002Fhash\u002Ffingerprint, and authenticated user\u002Fsite identifiers.\u003Cbr \u002F>\nPrivacy policy: https:\u002F\u002Foppti.dev\u002Fprivacy\u003C\u002Fp>\n\u003Cp>Service: OpenAI API (used by the backend service)\u003Cbr \u002F>\nPurpose: Generate and review alt text descriptions.\u003Cbr \u002F>\nWhen: During alt text generation or review requests processed by the backend service.\u003Cbr \u002F>\nData sent: Image metadata and image content, plus context text needed for generation\u002Freview.\u003Cbr \u002F>\nPrivacy policy: https:\u002F\u002Fopenai.com\u002Fprivacy\u003C\u002Fp>\n\u003Cp>Service: Stripe Checkout\u003Cbr \u002F>\nPurpose: Process plan upgrades and credit purchases.\u003Cbr \u002F>\nWhen: When you choose a paid plan\u002Fupgrade or purchase credits.\u003Cbr \u002F>\nData sent: Selected plan\u002Fprice and checkout context. Payment details are handled by Stripe.\u003Cbr \u002F>\nPrivacy policy: https:\u002F\u002Fstripe.com\u002Fprivacy\u003C\u002Fp>\n\u003Cp>Service: Resend Email API (used by backend contact delivery)\u003Cbr \u002F>\nPurpose: Deliver contact\u002Fsupport form messages.\u003Cbr \u002F>\nWhen: When you submit a contact\u002Fsupport form in the plugin.\u003Cbr \u002F>\nData sent: Name, email, subject, message, site URL, WordPress version, and plugin version.\u003Cbr \u002F>\nPrivacy policy: https:\u002F\u002Fresend.com\u002Flegal\u002Fprivacy\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>Developed by beepbeepv2\u003Cbr \u002F>\nhttps:\u002F\u002Fprofiles.wordpress.org\u002Fbeepbeepv2\u002F\u003C\u002Fp>\n\u003Ch3>Privacy & Security\u003C\u002Fh3>\n\u003Cp>This plugin:\u003Cbr \u002F>\n* Stores usage data locally in your WordPress database\u003Cbr \u002F>\n* Stores trial usage count locally in \u003Ccode>wp_options\u003C\u002Fcode> using an anonymous site identifier key (\u003Ccode>bbai_trial_usage_{site_hash}\u003C\u002Fcode>)\u003Cbr \u002F>\n* Does not require an email address during the initial 10-generation trial stage\u003Cbr \u002F>\n* Stores account and license details if you connect an account (e.g., email, plan)\u003Cbr \u002F>\n* Stores contact form submissions if you submit support requests (name, email, message)\u003Cbr \u002F>\n* Stores per-user usage logs linked to WordPress user IDs\u003Cbr \u002F>\n* Transmits image data and prompt\u002Fcontext text to external APIs during generation and review\u003Cbr \u002F>\n* Uses secure HTTPS connections for all API communication\u003Cbr \u002F>\n* Allows users to disable auto-generation through settings\u003Cbr \u002F>\n* Provides transparent information about external service usage\u003Cbr \u002F>\n* Images are processed and immediately deleted from our servers\u003Cbr \u002F>\n* Supports WordPress privacy export\u002Ferasure tools for stored data\u003C\u002Fp>\n","WordPress AI alt text generator for bulk image SEO and accessibility fixes across your media library and WooCommerce images.",0,1080,"2026-04-03T23:20:00.000Z","7.0","6.2","7.4",[18,19,20,21,22],"accessibility","alt-text","image-seo","media-library","woocommerce","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbeepbeep-ai-alt-text-generator\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.6.1.zip",100,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},"beepbeepv2",1,30,94,"2026-05-19T23:30:32.757Z",[37,55,71,86,103],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":45,"downloaded":46,"rating":11,"num_ratings":11,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":53,"download_link":54,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"alt-bot","Alt Bot – AI Image Alt Text, Caption & Description Generator","1.1.2","Rony Bormon","https:\u002F\u002Fprofiles.wordpress.org\u002Fronybormon\u002F","\u003Cp>\u003Cstrong>Alt Bot\u003C\u002Fstrong> is a professional WordPress plugin that automatically generates ALT text for your images, improving accessibility and SEO. It can process uploaded images automatically or handle existing images manually via the Media Library or the plugin’s dashboard.\u003C\u002Fp>\n\u003Cp>🎯 \u003Cstrong>Features\u003C\u002Fstrong>:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>✅ Automatic ALT text generation on image upload\u003C\u002Fli>\n\u003Cli>✅ Bulk generate ALT text for all or selected images\u003C\u002Fli>\n\u003Cli>✅ Missing ALT management with advanced filtering\u003C\u002Fli>\n\u003Cli>✅ Media Library integration:\n\u003Cul>\n\u003Cli>Grid and List views\u003C\u002Fli>\n\u003Cli>Overlay buttons on thumbnails for quick actions\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>✅ Individual ALT regeneration per image\u003C\u002Fli>\n\u003Cli>✅ Real-time statistics and progress tracking\u003C\u002Fli>\n\u003Cli>✅ Built with WordPress coding standards\u003C\u002Fli>\n\u003Cli>✅ Mobile-friendly and accessible interface\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How to Use\u003C\u002Fh3>\n\u003Cp>The plugin automatically generates ALT text for images during upload. Manual processing is also available.\u003C\u002Fp>\n\u003Ch4>🔄 Automatic ALT Generation (On Upload)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>When you upload an image, Alt Bot automatically generates ALT text using:\n\u003Col>\n\u003Cli>EXIF data (ImageDescription)\u003C\u002Fli>\n\u003Cli>Filename (converted to readable text)\u003C\u002Fli>\n\u003Cli>Attachment title (fallback)\u003C\u002Fli>\n\u003C\u002Fol>\n\u003C\u002Fli>\n\u003Cli>Improves site accessibility and SEO by ensuring all images have meaningful ALT text.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>🛠️ Manual ALT Generation\u003C\u002Fh4>\n\u003Ch3>Option 1: From Missing ALT Page\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Navigate to \u003Cstrong>Dashboard \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Alt Bot \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Missing ALT\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Use filters to view missing or existing ALT images.\u003C\u002Fli>\n\u003Cli>Select images or use \u003Cstrong>Select All\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Generate ALT for Selected\u003C\u002Fstrong> or \u003Cstrong>Generate for All Shown\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Option 2: From Media Library\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Open \u003Cstrong>Dashboard \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Media \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Library\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Hover over thumbnails to access \u003Cstrong>Alt Bot\u003C\u002Fstrong> overlay buttons.\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Generate ALT Text\u003C\u002Fstrong> for individual images.\u003C\u002Fli>\n\u003Cli>Red button = missing ALT, Green button = existing ALT.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Notes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Works with all image types supported by WordPress (JPEG, PNG, GIF, WebP, etc.).\u003C\u002Fli>\n\u003Cli>EXIF data is available for JPEG images only.\u003C\u002Fli>\n\u003Cli>Bulk operations depend on server performance and image count.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Credits \u002F Acknowledgements\u003C\u002Fh3>\n\u003Cp>Special thanks to \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fdevsabbirhossain\" rel=\"nofollow ugc\">Sabbir Hossain\u003C\u002Fa> for contributing to several key features of this plugin.\u003Cbr \u002F>\nYour support, ideas, and development assistance played an important role in improving the overall functionality and user experience.\u003C\u002Fp>\n\u003Cp>We truly appreciate the effort and dedication you brought to this project.\u003C\u002Fp>\n\u003Ch3>Links\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Author: \u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Frony-bormon\" rel=\"nofollow ugc\">Rony Bormon\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Website: \u003Ca href=\"https:\u002F\u002Fronybormon.com\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Fronybormon.com\u002F\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Automatically generate alt text for images using EXIF, filename, or title. Includes bulk actions, media library, and missing ALT management.",40,558,"2025-11-30T16:12:00.000Z","6.8.5","6.7","8.0",[18,19,52,20,21],"bulk-alt-generation","https:\u002F\u002Fronybormon.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Falt-bot.1.1.2.zip",{"slug":56,"name":57,"version":58,"author":59,"author_profile":60,"description":61,"short_description":62,"active_installs":63,"downloaded":64,"rating":25,"num_ratings":32,"last_updated":65,"tested_up_to":66,"requires_at_least":67,"requires_php":16,"tags":68,"homepage":60,"download_link":70,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"altify-ai-auto-alt-text-generator","Altify AI – Auto ALT Text Generator","1.0.3","Ravi Khadka","https:\u002F\u002Fprofiles.wordpress.org\u002Fravikhadka\u002F","\u003Cp>Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO.\u003C\u002Fp>\n\u003Cp>Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with AI or offline mode.\u003C\u002Fp>\n\u003Cp>Key features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Beginner-friendly Automation tab with upload toggle, daily schedule, and one-click \u003Ccode>Run scan now\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Automatic ALT generation on new image uploads with selectable mode priority (\u003Ccode>Offline first\u003C\u002Fcode>, \u003Ccode>AI first\u003C\u002Fcode>, \u003Ccode>Offline only\u003C\u002Fcode>, \u003Ccode>AI only\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>Daily background scan for missing ALT (or all images) with mode selection, run limit, and status panel.\u003C\u002Fli>\n\u003Cli>Top-level \u003Ccode>Altify AI\u003C\u002Fcode> admin menu (before Posts) with dedicated \u003Ccode>Settings\u003C\u002Fcode> and \u003Ccode>Generate History\u003C\u002Fcode> pages.\u003C\u002Fli>\n\u003Cli>AI mode with OpenAI model settings, rate limiting, retry\u002Fbackoff, and safe fallback behavior.\u003C\u002Fli>\n\u003Cli>Offline mode (no API) that generates ALT from title\u002Fcaption\u002Fdescription\u002Ffilename.\u003C\u002Fli>\n\u003Cli>Bulk Media Library processing with filters, batching, and pause\u002Fresume\u002Fstop controls.\u003C\u002Fli>\n\u003Cli>WooCommerce bulk generation for featured and gallery images with category\u002Fdate filters.\u003C\u002Fli>\n\u003Cli>Generation history table with source, method (AI\u002FOffline\u002FCache), ALT preview, and row-level delete controls. Settings page shows the latest 10 rows for quick review.\u003C\u002Fli>\n\u003Cli>Multilingual support: Auto (site locale), many built-in languages, and custom language input.\u003C\u002Fli>\n\u003Cli>Optional vision-based analysis for image-aware ALT suggestions.\u003C\u002Fli>\n\u003Cli>Native WordPress ALT field updates (\u003Ccode>_wp_attachment_image_alt\u003C\u002Fcode>) for SEO plugin compatibility.\u003C\u002Fli>\n\u003Cli>Smart protection for existing ALT text via \u003Ccode>Only fill empty ALT\u003C\u002Fcode> and \u003Ccode>Overwrite existing ALT\u003C\u002Fcode>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>SEO and accessibility benefits:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Improves image context for screen readers.\u003C\u002Fli>\n\u003Cli>Reduces missing ALT text across large media libraries.\u003C\u002Fli>\n\u003Cli>Keeps ALT text in the native WordPress field (\u003Ccode>_wp_attachment_image_alt\u003C\u002Fcode>) for compatibility with SEO plugins.\u003C\u002Fli>\n\u003Cli>Avoids duplicate custom ALT fields and vendor lock-in.\u003C\u002Fli>\n\u003Cli>Supports content quality workflows with configurable length and overwrite behavior.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>How it works:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Plugin gathers safe text context from attachment metadata (filename, title, caption, description).\u003C\u002Fli>\n\u003Cli>Optional product context is added for WooCommerce images (product name\u002Fcategory).\u003C\u002Fli>\n\u003Cli>OpenAI returns a concise ALT suggestion.\u003C\u002Fli>\n\u003Cli>Result is sanitized and stored in the standard WordPress ALT field.\u003C\u002Fli>\n\u003Cli>If API fails (or offline mode is used), the plugin writes a clean metadata-based ALT text fallback.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Roadmap\u003C\u002Fh3>\n\u003Cp>Planned improvements for upcoming releases:\u003Cbr \u002F>\nRoadmap items are planned and may change based on user feedback and compatibility requirements.\u003C\u002Fp>\n\u003Ch4>1.0.1 (Quality + Workflow)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Better admin insights: per-run summaries and clearer error diagnostics.\u003C\u002Fli>\n\u003Cli>Stronger ALT cleanup rules for edge-case filenames and punctuation.\u003C\u002Fli>\n\u003Cli>Improved WooCommerce bulk UX for large product catalogs.\u003C\u002Fli>\n\u003Cli>Dedicated Offline Mode tab and improved generation history management.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>1.1.0 (Performance + Control)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Optional CLI command for large-scale ALT generation runs.\u003C\u002Fli>\n\u003Cli>Enhanced queue reliability for high-volume media sites.\u003C\u002Fli>\n\u003Cli>More granular include\u002Fexclude filters for bulk processing.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>1.2.0 (Localization + Integrations)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Additional language options based on user demand.\u003C\u002Fli>\n\u003Cli>Extended compatibility checks for popular SEO\u002Fworkflow plugins.\u003C\u002Fli>\n\u003Cli>Optional export\u002Freporting tools for ALT coverage audits.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External services\u003C\u002Fh3>\n\u003Cp>This plugin connects to the OpenAI API to generate ALT text suggestions for image attachments.\u003Cbr \u002F>\nIt is required for AI-based ALT text generation features (single upload automation, media bulk generation, and WooCommerce image bulk generation), unless Offline mode is enabled.\u003C\u002Fp>\n\u003Cp>Service used:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>OpenAI API (\u003Ccode>https:\u002F\u002Fapi.openai.com\u002Fv1\u002Fchat\u002Fcompletions\u003C\u002Fcode>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Data sent and when:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Sent only when an admin-triggered or configured ALT generation request is executed.\u003C\u002Fli>\n\u003Cli>Sent data includes metadata\u002Fcontext built from WordPress attachment fields:\n\u003Cul>\n\u003Cli>Attachment filename (cleaned)\u003C\u002Fli>\n\u003Cli>Attachment title\u002Fcaption\u002Fdescription\u003C\u002Fli>\n\u003Cli>Optional WooCommerce product name\u002Fcategories when available\u003C\u002Fli>\n\u003Cli>Generation settings such as requested language and max length\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>If \u003Ccode>Analyze actual image (Vision)\u003C\u002Fcode> is enabled, a resized image preview may also be sent.\u003C\u002Fli>\n\u003Cli>If \u003Ccode>Offline mode\u003C\u002Fcode> is enabled, no OpenAI request is sent.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Service provider legal links:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Terms of Use: https:\u002F\u002Fopenai.com\u002Fpolicies\u002Fterms-of-use\u002F\u003C\u002Fli>\n\u003Cli>Privacy Policy: https:\u002F\u002Fopenai.com\u002Fpolicies\u002Fprivacy-policy\u002F\u003C\u002Fli>\n\u003C\u002Ful>\n","Auto ALT text and AI ALT text plugin for WordPress with bulk image ALT text tools, featured image ALT text, and WooCommerce image ALT.",10,380,"2026-03-13T03:43:00.000Z","6.9.4","6.0",[18,69,19,20,22],"ai-alt-text","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Faltify-ai-auto-alt-text-generator.1.0.3.zip",{"slug":72,"name":73,"version":74,"author":75,"author_profile":76,"description":77,"short_description":78,"active_installs":63,"downloaded":79,"rating":25,"num_ratings":32,"last_updated":80,"tested_up_to":81,"requires_at_least":67,"requires_php":16,"tags":82,"homepage":84,"download_link":85,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"smartaltfixer-image-alt-seo","Smart Alt Fixer – Image Alt Text & SEO","3.8.4","smartaltfixer","https:\u002F\u002Fprofiles.wordpress.org\u002Fsmartaltfixer\u002F","\u003Cp>Smart Alt Fixer helps WordPress site owners improve image accessibility and SEO by ensuring that images have meaningful and descriptive alternative text (alt attributes).\u003C\u002Fp>\n\u003Cp>The plugin scans the Media Library for images missing alt text and provides automatic generation tools to assist site administrators.\u003C\u002Fp>\n\u003Cp>Smart Alt Fixer includes a fully functional local alt-text fallback that works without any external services.\u003Cbr \u002F>\nConnecting to an optional external image analysis service can enhance the generated descriptions, but is not required for the plugin to function.\u003C\u002Fp>\n\u003Cp>Missing alt text can negatively impact screen reader accessibility and image search visibility. This plugin helps reduce manual effort while supporting accessibility best practices and SEO guidelines.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key features include:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Scan the Media Library for images without alt text\u003C\u002Fli>\n\u003Cli>Generate alt attributes using a local fallback mechanism\u003C\u002Fli>\n\u003Cli>Optional enhanced descriptions via external image analysis\u003C\u002Fli>\n\u003Cli>WooCommerce product image support\u003C\u002Fli>\n\u003Cli>Bulk processing with background execution\u003C\u002Fli>\n\u003Cli>Multilingual output based on site language\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>Smart Alt Fixer can optionally connect to an external service to generate enhanced image descriptions.\u003C\u002Fp>\n\u003Cp>Image analysis is only performed when the site administrator manually initiates a scan or generation action.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Service name:\u003C\u002Fstrong> Smart Alt Fixer API\u003Cbr \u002F>\n\u003Cstrong>Service URL:\u003C\u002Fstrong> https:\u002F\u002Fsmartaltfixer.com\u003Cbr \u002F>\n\u003Cstrong>Purpose:\u003C\u002Fstrong> Optional image analysis and alt text enhancement\u003Cbr \u002F>\n\u003Cstrong>Data sent:\u003C\u002Fstrong> Public image URLs only\u003Cbr \u002F>\n\u003Cstrong>Personal data:\u003C\u002Fstrong> No personal or identifiable user data is transmitted or stored\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Privacy Policy:\u003C\u002Fstrong> https:\u002F\u002Fsmartaltfixer.com\u002Fprivacy\u003Cbr \u002F>\n\u003Cstrong>Terms of Service:\u003C\u002Fstrong> https:\u002F\u002Fsmartaltfixer.com\u002Fterms\u003C\u002Fp>\n","Automatically generate descriptive alt text for images to improve accessibility and image SEO.",206,"2026-02-05T21:45:00.000Z","6.7.5",[18,19,83,20,22],"elementor","https:\u002F\u002Fsmartaltfixer.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsmartaltfixer-image-alt-seo.3.8.4.zip",{"slug":87,"name":88,"version":89,"author":90,"author_profile":91,"description":92,"short_description":93,"active_installs":11,"downloaded":94,"rating":11,"num_ratings":11,"last_updated":95,"tested_up_to":81,"requires_at_least":96,"requires_php":97,"tags":98,"homepage":97,"download_link":100,"security_score":101,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":102},"smart-alt-text","Smart Alt Text","1.1","vigneshkemp","https:\u002F\u002Fprofiles.wordpress.org\u002Fvigneshkemp\u002F","\u003Cp>\u003Cstrong>Smart Alt Text\u003C\u002Fstrong> automatically creates alt attributes for images based on their filenames — only if they’re missing.\u003Cbr \u002F>\nThis improves SEO, accessibility, and your site’s overall image quality.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003Cbr \u002F>\n– Auto-generate alt text from image filenames\u003Cbr \u002F>\n– Choose formatting: Title Case, Sentence case, or lowercase\u003Cbr \u002F>\n– Bulk apply alt text across your entire Media Library\u003Cbr \u002F>\n– Seamlessly supports posts, pages, and builders like Elementor\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>GPLv2 or later\u003C\u002Fp>\n","Automatically generate and bulk-apply alt text for images based on filenames. Clean, customizable, and SEO-friendly.",277,"2025-04-15T11:20:00.000Z","5.0","",[18,19,99,20,21],"bulk-alt-text","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsmart-alt-text.zip",92,"2026-04-06T09:54:40.288Z",{"slug":104,"name":105,"version":106,"author":107,"author_profile":108,"description":109,"short_description":110,"active_installs":111,"downloaded":112,"rating":113,"num_ratings":101,"last_updated":114,"tested_up_to":66,"requires_at_least":115,"requires_php":97,"tags":116,"homepage":119,"download_link":120,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"auto-image-attributes-from-filename-with-bulk-updater","Auto Image Attributes From Filename With Bulk Updater (Add Alt Text, Image Title For Image SEO)","4.9","Arun Basil Lal","https:\u002F\u002Fprofiles.wordpress.org\u002Farunbasillal\u002F","\u003Cp>Automatically add Image attributes such as Image Alt Text, Image Title, Image Caption and Image Description from Image Filename.\u003C\u002Fp>\n\u003Cp>The plugin can update image attributes for both new image uploads and existing images in the media library. Great for Image SEO and Accessibility.\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FV5SOU4okOfU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>Image alt text and title is critical for your image SEO and will help users discover your images (and there by your website) in Google \u002F Yahoo \u002F Bing image search.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>Life-Saver\u003C\u002Fstrong>\u003Cbr \u002F>\n  It allowed me to save tons of time. Further, the support is nice and ready to help.\u003Cbr \u002F>\n  – \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Flife-saver-188\u002F\" rel=\"ugc\">thnk4\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>Proper alt text also helps people who are blind or who have low vision understand your images there by improving the accessibility of your website. This will open up your website to a new segment of visitors and increase your traffic.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>Wow!\u003C\u002Fstrong>\u003Cbr \u002F>\n  If I could give this 1 more star I would!\u003Cbr \u002F>\n  – \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fwow-550\u002F\" rel=\"ugc\">jdev\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>With this plugin you can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Set the image filename as the image Title.\u003C\u002Fli>\n\u003Cli>Set the image filename as the image Caption.\u003C\u002Fli>\n\u003Cli>Set the image filename as the image Description.\u003C\u002Fli>\n\u003Cli>Set the image filename as the image Alt Text. This was a default feature in WordPress before 4.7. The plugin restores this essential feature which is great for SEO.\u003C\u002Fli>\n\u003Cli>Insert Image Title into post HTML. WordPress stopped adding Image Titles to images since WordPress 3.5. The plugin restores it.\u003C\u002Fli>\n\u003Cli>Remove hyphens from the image filename.\u003C\u002Fli>\n\u003Cli>Remove underscores from the image filename.\u003C\u002Fli>\n\u003Cli>Remove full stops from filename.\u003C\u002Fli>\n\u003Cli>Remove commas from filename.\u003C\u002Fli>\n\u003Cli>Remove all numbers from filename.\u003C\u002Fli>\n\u003Cli>Choose to turn off any of the above mentioned features.\u003C\u002Fli>\n\u003Cli>Display image attributes as columns in Media Library list view.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>With the bulk updater you can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Set the image filename as image Title, Caption, Description and Alt Text after removing hyphens and underscores from the filename.\u003C\u002Fli>\n\u003Cli>Update any number of images in your Media Library in one click.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If your image filename is \u003Cem>My_image-name.jpg\u003C\u002Fem>, your Image Title, Caption, Description And Alt Text will be \u003Cem>My image name\u003C\u002Fem>.\u003C\u002Fp>\n\u003Cp>The plugin settings and bulk updater are in WordPress Admin > Settings > Image Attributes. Here you can choose which attributes to update for NEW uploads.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Please remember to take a database backup before running the bulk updater (or anything bulk in general). The bulk updater updates ALL attributes for existing images in the Media Library and ignores the settings set for NEW uploads.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3>Image Attributes Pro\u003C\u002Fh3>\n\u003Cp>A pro add-on is now available for the plugin. Check out \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Image Attributes Pro\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>The pro add-on can update the image attributes from not just the image filename, but also from the post \u002F page \u002F product \u002F custom post type title. You can fine tune the bulk updater settings and even clean up the actual image filename.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>Thank you so much for all your help in trying to fix this, its very much appreciated indeed. You’ve gone above and beyond what I was expecting in support!\u003Cbr \u002F>\n  Rest assured I will give great feedback on your plugin anywhere I can!!\u003Cbr \u002F>\n  – \u003Cstrong>James Barber\u003C\u002Fstrong>, for \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Image Attributes Pro\u003C\u002Fa> via email.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>\u003Cstrong>What the pro add-on you get these additional features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Use post title as title text. If image is not attached to a post, image filename will be used instead.\u003C\u002Fli>\n\u003Cli>Use post title as alt text. If image is not attached to a post, image filename will be used instead.\u003C\u002Fli>\n\u003Cli>Use post title as caption. If image is not attached to a post, image filename will be used instead.\u003C\u002Fli>\n\u003Cli>Use post title as description. If image is not attached to a post, image filename will be used instead.\u003C\u002Fli>\n\u003Cli>Build your own attributes using custom tags like \u003Ccode>%filename%\u003C\u002Fcode>, \u003Ccode>%posttitle%\u003C\u002Fcode>, \u003Ccode>%sitetitle%\u003C\u002Fcode>, \u003Ccode>%category%\u003C\u002Fcode>, \u003Ccode>%tag%\u003C\u002Fcode>, \u003Ccode>%wc_variation%\u003C\u002Fcode>, \u003Ccode>%yoastfocuskw%\u003C\u002Fcode>, \u003Ccode>%yoastseotitle%\u003C\u002Fcode>, \u003Ccode>%rankmathfocuskw%\u003C\u002Fcode>, \u003Ccode>%seopresstargetkw%\u003C\u002Fcode> and \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fcustom-image-attribute-tags\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">many more\u003C\u002Fa>. Each custom tag will be replaced  with it’s value. You can combine them as you please!\u003C\u002Fli>\n\u003Cli>Use Yoast Focus Keyword and Rank Math Focus Keyword as image attributes.\u003C\u002Fli>\n\u003Cli>Clear any image attribute by setting it as blank \u002F empty. \u003C\u002Fli>\n\u003Cli>Exclude images from Bulk Updater. A meta box and a checkbox is added to the \u003Ccode>Media Library\u003C\u002Fcode> > \u003Ccode>Edit Media\u003C\u002Fcode> sidebar. When checked, the bulk updater will not update the attributes of that image in the media library or in posts \u002F products where the image is used. \u003C\u002Fli>\n\u003Cli>Remove apostrophe ( ‘ ) from filename\u003C\u002Fli>\n\u003Cli>Remove tilde ( ~ ) from filename\u003C\u002Fli>\n\u003Cli>Remove plus ( + ) from filename\u003C\u002Fli>\n\u003Cli>Remove pound ( # ) from filename\u003C\u002Fli>\n\u003Cli>Remove ampersand ( & ) from filename\u003C\u002Fli>\n\u003Cli>Remove round brackets ( ( ) ) from filename\u003C\u002Fli>\n\u003Cli>Remove square brackets ( [ ] ) from filename\u003C\u002Fli>\n\u003Cli>Remove curly brackets ( { } ) from filename\u003C\u002Fli>\n\u003Cli>Filter words or characters from filename\u003C\u002Fli>\n\u003Cli>Filter filename with regex\u003C\u002Fli>\n\u003Cli>convert image attributes to lowercase\u003C\u002Fli>\n\u003Cli>CONVERT IMAGE ATTRIBUTES TO UPPERCASE\u003C\u002Fli>\n\u003Cli>Use title casing for image attributes. First Letter Of Each Word Will Be Capitalized.\u003C\u002Fli>\n\u003Cli>Use sentence casing for image attributes. First letter of a sentence will be capitalized.\u003C\u002Fli>\n\u003Cli>Clean the actual image filename after upload.\u003C\u002Fli>\n\u003Cli>Choose to turn off any of the above mentioned features.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>With the Image Attributes Pro bulk updater you can:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Update image title and alt text \u003Cstrong>for images inserted into posts and custom post types\u003C\u002Fstrong>. Not just the media library. \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fhow-wordpress-store-image-attributes\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">What is the difference?\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Fine tune all settings. Choose what to update.\u003C\u002Fli>\n\u003Cli>Update image titles \u002F alt text in media library and \u002F or existing posts.\u003C\u002Fli>\n\u003Cli>Update image titles \u002F alt text in media library and \u002F or existing posts only if no title \u002F alt text is set. Existing image titles \u002F alt text will be preserved.\u003C\u002Fli>\n\u003Cli>Update image caption and description in the media library. Existing image captions and descriptions can be preserved.\u003C\u002Fli>\n\u003Cli>Build your own attributes using custom tags like \u003Ccode>%filename%\u003C\u002Fcode>, \u003Ccode>%posttitle%\u003C\u002Fcode>, \u003Ccode>%sitetitle%\u003C\u002Fcode>, \u003Ccode>%category%\u003C\u002Fcode>, \u003Ccode>%tag%\u003C\u002Fcode>, \u003Ccode>%yoastfocuskw%\u003C\u002Fcode>, \u003Ccode>%yoastseotitle%\u003C\u002Fcode>, \u003Ccode>%rankmathfocuskw%\u003C\u002Fcode>, \u003Ccode>%seopresstargetkw%\u003C\u002Fcode> and \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fcustom-image-attribute-tags\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">many more\u003C\u002Fa>. Each custom tag will be replaced  with it’s value. You can combine them as you please!\u003C\u002Fli>\n\u003Cli>Choose to turn off any of the above mentioned features.\u003C\u002Fli>\n\u003Cli>Choose specific post types to bulk update.\u003C\u002Fli>\n\u003Cli>Bulk update image attributes in \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Facf-compatibility\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">ACF’s WYSIWYG Editor\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fdivi-compatibility\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Divi theme\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Modify auto generated image attributes using the \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fcodex\u002Fiaffpro_image_attributes\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">iaffpro_image_attributes filter\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Disable updating of attributes in media library completely and just updated attributes in Post HTML or vice versa.\u003C\u002Fli>\n\u003Cli>Add or remove custom image attributes using the \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fcodex\u002Fiaffpro_html_image_markup_post_update\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">iaffpro_html_image_markup_post_update filter\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Other Image Attributes Pro features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Bulk edit image attributes from the Media Library quickly and easily. \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fmedia-library-bulk-editing\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Read more.\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Bulk Update image attributes from WordPress Media Library. Select images and choose \u003Ccode>Update image attributes\u003C\u002Fcode> Bulk action in Media Library (list view). \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fbulk-actions\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Read more.\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Bulk Update image attributes from WordPress admin page for Posts, Pages and WooCommerce Products. Select the posts, pages or WooCommerce products in bulk and choose “Update image attributes” Bulk action. \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fbulk-actions\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Read more.\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Copy image attributes to post HTML while updating in Media Library. Any changes made to image attributes in the media library will be automatically synced to the corresponding post HTML. \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fauto-copy-image-attributes-to-post-html-from-media-library\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Read more.\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Update image attributes on post publish or update. Automatically updates image attributes when a post is published or updated. Ensures image attributes are always consistent with settings. \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002Fupdate-image-attributes-on-save-post\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">Read more.\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For screenshots, FAQ and full list of features, please see the \u003Ca href=\"https:\u002F\u002Fimageattributespro.com\u002F?utm_source=wordpress.org&utm_medium=readme\" rel=\"nofollow ugc\">product website\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>No Competitors\u003C\u002Fstrong>\u003Cbr \u002F>\n  This is the only one that enables you to add missing tags to your images in one go, simple! … This one is very well coded and the author pays great attentions to users feedback \u002F requests \u002F support.\u003Cbr \u002F>\n  – \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fno-competitors\u002F\" rel=\"ugc\">arsenalemusica\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n","Automatically add Image Alt Text, Title, Caption and Description from Filename. Bulk update existing images. Great for Image SEO and Accessibility.",100000,917376,96,"2025-12-17T18:52:00.000Z","3.5.0",[18,19,117,20,118],"bulk-edit-images","image-title","https:\u002F\u002Fimageattributespro.com\u002F?utm_source=plugin-header&utm_medium=plugin-uri","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fauto-image-attributes-from-filename-with-bulk-updater.zip",{"attackSurface":122,"codeSignals":398,"taintFlows":457,"riskAssessment":560,"analyzedAt":568},{"hooks":123,"ajaxHandlers":293,"restRoutes":303,"shortcodes":388,"cronEvents":389,"entryPointCount":396,"unprotectedCount":397},[124,130,133,137,140,143,148,151,155,159,164,168,172,175,178,182,186,190,193,196,200,204,207,211,215,218,221,225,228,232,236,240,243,245,248,250,254,257,260,264,269,274,278,282,287,289],{"type":125,"name":126,"callback":127,"file":128,"line":129},"action","admin_menu","add_settings_page","admin\\class-bbai-admin-hooks.php",38,{"type":125,"name":126,"callback":131,"file":128,"line":132},"register_credit_usage_page",43,{"type":125,"name":134,"callback":135,"file":128,"line":136},"admin_init","register_settings",44,{"type":125,"name":134,"callback":138,"file":128,"line":139},"maybe_redirect_to_onboarding",45,{"type":125,"name":134,"callback":141,"file":128,"line":142},"maybe_clear_usage_cache",46,{"type":125,"name":144,"callback":145,"priority":146,"file":128,"line":147},"add_attachment","handle_media_change",5,47,{"type":125,"name":149,"callback":145,"priority":146,"file":128,"line":150},"delete_attachment",48,{"type":125,"name":152,"callback":153,"priority":146,"file":128,"line":154},"attachment_updated","handle_attachment_updated",49,{"type":125,"name":156,"callback":157,"priority":146,"file":128,"line":158},"save_post","handle_post_save",50,{"type":160,"name":161,"callback":162,"priority":146,"file":128,"line":163},"filter","wp_update_attachment_metadata","handle_media_metadata_update",52,{"type":125,"name":165,"callback":166,"file":128,"line":167},"rest_api_init","register_routes",56,{"type":125,"name":169,"callback":170,"file":128,"line":171},"admin_enqueue_scripts","enqueue_admin",57,{"type":125,"name":134,"callback":173,"file":128,"line":174},"maybe_display_threshold_notice",58,{"type":125,"name":134,"callback":176,"file":128,"line":177},"maybe_handle_direct_checkout",59,{"type":125,"name":179,"callback":180,"file":128,"line":181},"admin_notices","maybe_render_checkout_notices",60,{"type":125,"name":183,"callback":184,"file":128,"line":185},"admin_post_beepbeepai_usage_export","handle_usage_export",61,{"type":125,"name":187,"callback":188,"file":128,"line":189},"admin_post_beepbeepai_debug_export","handle_debug_log_export",62,{"type":125,"name":191,"callback":184,"file":128,"line":192},"admin_post_bbai_usage_export",64,{"type":125,"name":194,"callback":188,"file":128,"line":195},"admin_post_bbai_debug_export",65,{"type":125,"name":197,"callback":198,"file":128,"line":199},"admin_post_bbai_logout","handle_logout",66,{"type":125,"name":201,"callback":202,"file":128,"line":203},"init","ensure_capability",67,{"type":125,"name":179,"callback":205,"file":128,"line":206},"maybe_render_queue_notice",68,{"type":125,"name":208,"callback":209,"file":128,"line":210},"admin_footer","maybe_render_external_api_notice",69,{"type":125,"name":212,"callback":213,"file":128,"line":214},"beepbeepai_run_migration","run_migration",77,{"type":125,"name":126,"callback":216,"priority":217,"file":128,"line":101},"register_menu",20,{"type":125,"name":169,"callback":219,"file":128,"line":220},"enqueue_assets",93,{"type":125,"name":134,"callback":222,"priority":146,"file":223,"line":224},"maybe_run_migration","admin\\class-bbai-core.php",191,{"type":125,"name":179,"callback":226,"file":223,"line":227},"render_token_notice",564,{"type":125,"name":229,"callback":230,"file":223,"line":231},"current_screen","closure",1121,{"type":125,"name":169,"callback":233,"priority":217,"file":234,"line":235},"bbai_enqueue_logged_out_styles","beepbeep-ai-alt-text-generator.php",91,{"type":125,"name":237,"callback":238,"priority":146,"file":234,"line":239},"parse_request","bbai_enable_wp_json_fallback_route",154,{"type":125,"name":183,"callback":241,"priority":11,"file":234,"line":242},"beepbeepai_handle_usage_export_admin_post",230,{"type":125,"name":191,"callback":241,"priority":11,"file":234,"line":244},231,{"type":125,"name":187,"callback":246,"priority":11,"file":234,"line":247},"beepbeepai_handle_debug_export_admin_post",232,{"type":125,"name":194,"callback":246,"priority":11,"file":234,"line":249},233,{"type":125,"name":251,"callback":252,"priority":217,"file":234,"line":253},"wp_initialize_site","beepbeepai_initialize_new_site",331,{"type":125,"name":134,"callback":255,"file":234,"line":256},"maybe_upgrade",346,{"type":125,"name":201,"callback":230,"priority":146,"file":258,"line":259},"includes\\bootstrap-v5.php",124,{"type":125,"name":201,"callback":261,"file":262,"line":263},"anonymous","includes\\class-bbai.php",71,{"type":125,"name":265,"callback":266,"priority":63,"file":267,"line":268},"delete_user","anonymize_user_usage","includes\\class-credit-usage-logger.php",822,{"type":160,"name":270,"callback":271,"file":272,"line":273},"wp_privacy_personal_data_exporters","register_exporter","includes\\class-privacy.php",22,{"type":160,"name":275,"callback":276,"file":272,"line":277},"wp_privacy_personal_data_erasers","register_eraser",23,{"type":160,"name":279,"callback":280,"priority":63,"file":281,"line":273},"wp_get_attachment_image_attributes","add_image_attributes","includes\\class-schema-markup.php",{"type":125,"name":283,"callback":284,"priority":285,"file":281,"line":286},"wp_head","output_schema_json_ld",99,25,{"type":125,"name":134,"callback":135,"file":281,"line":288},28,{"type":125,"name":165,"callback":290,"file":291,"line":292},"register_rest_routes","includes\\core\\class-router.php",114,[294,299],{"action":295,"nopriv":296,"callback":297,"hasNonce":296,"hasCapCheck":296,"file":128,"line":298},"bbai_generate_missing",false,"ajax_generate_missing",162,{"action":300,"nopriv":296,"callback":301,"hasNonce":296,"hasCapCheck":296,"file":128,"line":302},"bbai_reoptimize_all","ajax_reoptimize_all",163,[304,312,316,323,327,332,337,343,348,353,358,363,368,373,378,383],{"namespace":305,"route":306,"methods":307,"callback":309,"permissionCallback":310,"file":311,"line":129},"bbai\u002Fv1","\u002Fgenerate\u002F(?P\u003Cid>\\d+)",[308],"POST","handle_generate_single","can_edit_attachment","admin\\class-bbai-rest-controller.php",{"namespace":305,"route":313,"methods":314,"callback":315,"permissionCallback":310,"file":311,"line":181},"\u002Falt\u002F(?P\u003Cid>\\d+)",[308],"handle_save_alt",{"namespace":305,"route":317,"methods":318,"callback":320,"permissionCallback":321,"file":311,"line":322},"\u002Flist",[319],"GET","handle_list","can_edit_media",82,{"namespace":305,"route":324,"methods":325,"callback":326,"permissionCallback":321,"file":311,"line":292},"\u002Fstats",[319],"handle_stats",{"namespace":305,"route":328,"methods":329,"callback":330,"permissionCallback":321,"file":311,"line":331},"\u002Fusage",[319],"handle_usage",131,{"namespace":305,"route":333,"methods":334,"callback":335,"permissionCallback":321,"file":311,"line":336},"\u002Fplans",[319],"handle_plans",141,{"namespace":305,"route":338,"methods":339,"callback":340,"permissionCallback":341,"file":311,"line":342},"\u002Fusage\u002Fsummary",[319],"handle_usage_summary","can_manage_admin",151,{"namespace":305,"route":344,"methods":345,"callback":346,"permissionCallback":341,"file":311,"line":347},"\u002Fusage\u002Fby-user",[319],"handle_usage_by_user",161,{"namespace":305,"route":349,"methods":350,"callback":351,"permissionCallback":341,"file":311,"line":352},"\u002Fusage\u002Fevents",[319],"handle_usage_events",171,{"namespace":305,"route":354,"methods":355,"callback":356,"permissionCallback":341,"file":311,"line":357},"\u002Fqueue",[319],"handle_queue",213,{"namespace":305,"route":359,"methods":360,"callback":361,"permissionCallback":321,"file":311,"line":362},"\u002Flogs",[319],"handle_logs",223,{"namespace":305,"route":364,"methods":365,"callback":366,"permissionCallback":341,"file":311,"line":367},"\u002Flogs\u002Fclear",[308],"handle_logs_clear",270,{"namespace":305,"route":369,"methods":370,"callback":371,"permissionCallback":341,"file":311,"line":372},"\u002Fuser-usage",[319],"handle_user_usage",287,{"namespace":305,"route":374,"methods":375,"callback":376,"permissionCallback":341,"file":311,"line":377},"\u002Fevents",[319],"handle_events",297,{"namespace":305,"route":379,"methods":380,"callback":381,"permissionCallback":341,"file":311,"line":382},"\u002Flog",[308],"handle_log_event",339,{"namespace":305,"route":384,"methods":385,"callback":386,"permissionCallback":321,"file":311,"line":387},"\u002Ftrial-status",[319],"handle_trial_status",374,[],[390,392],{"hook":212,"callback":212,"file":223,"line":391},208,{"hook":393,"callback":393,"file":394,"line":395},"bbai_async_event","includes\\core\\class-event-bus.php",182,18,2,{"dangerousFunctions":399,"sqlUsage":400,"outputEscaping":410,"fileOperations":11,"externalRequests":455,"nonceChecks":113,"capabilityChecks":277,"bundledLibraries":456},[],{"prepared":401,"raw":397,"locations":402},240,[403,407],{"file":404,"line":405,"context":406},"admin\\class-bbai-credit-usage-page.php",332,"$wpdb->get_var() with variable interpolation",{"file":408,"line":409,"context":406},"admin\\partials\\dashboard-logged-out.php",21,{"escaped":411,"rawEcho":217,"locations":412},1293,[413,416,418,420,422,423,426,428,430,432,434,436,438,440,442,444,446,448,450,453],{"file":223,"line":414,"context":415},2291,"raw output",{"file":223,"line":417,"context":415},2332,{"file":223,"line":419,"context":415},3175,{"file":404,"line":421,"context":415},37,{"file":404,"line":147,"context":415},{"file":424,"line":425,"context":415},"admin\\partials\\dashboard-body.php",604,{"file":424,"line":427,"context":415},605,{"file":424,"line":429,"context":415},608,{"file":424,"line":431,"context":415},617,{"file":408,"line":433,"context":415},115,{"file":408,"line":435,"context":415},123,{"file":408,"line":437,"context":415},479,{"file":408,"line":439,"context":415},480,{"file":408,"line":441,"context":415},710,{"file":408,"line":443,"context":415},728,{"file":408,"line":445,"context":415},732,{"file":408,"line":447,"context":415},757,{"file":449,"line":224,"context":415},"admin\\partials\\settings-tab.php",{"file":451,"line":452,"context":415},"includes\\admin\\class-bbai-admin-dashboard.php",109,{"file":451,"line":454,"context":415},614,4,[],[458,477,488,518,540],{"entryPoint":459,"graph":460,"unsanitizedCount":11,"severity":476},"maybe_render_checkout_notices (admin\\class-bbai-core.php:702)",{"nodes":461,"edges":473},[462,467],{"id":463,"type":464,"label":465,"file":223,"line":466},"n0","source","$_GET",711,{"id":468,"type":469,"label":470,"file":223,"line":471,"wp_function":472},"n1","sink","echo() [XSS]",722,"echo",[474],{"from":463,"to":468,"sanitized":475},true,"low",{"entryPoint":478,"graph":479,"unsanitizedCount":11,"severity":476},"\u003Cclass-bbai-credit-usage-page> (admin\\class-bbai-credit-usage-page.php:0)",{"nodes":480,"edges":486},[481,482],{"id":463,"type":464,"label":465,"file":404,"line":167},{"id":468,"type":469,"label":483,"file":404,"line":484,"wp_function":485},"get_row() [SQLi]",315,"get_row",[487],{"from":463,"to":468,"sanitized":475},{"entryPoint":489,"graph":490,"unsanitizedCount":32,"severity":517},"ajax_get_attachment_ids (admin\\class-bbai-core.php:5985)",{"nodes":491,"edges":512},[492,495,498,503,506,509],{"id":463,"type":464,"label":493,"file":223,"line":494},"$_POST",6007,{"id":468,"type":496,"label":497,"file":223,"line":494},"transform","→ get_all_attachment_ids()",{"id":499,"type":469,"label":500,"file":501,"line":401,"wp_function":502},"n2","get_col() [SQLi]","admin\\traits\\trait-core-media.php","get_col",{"id":504,"type":464,"label":493,"file":223,"line":505},"n3",6008,{"id":507,"type":496,"label":508,"file":223,"line":505},"n4","→ get_missing_attachment_ids()",{"id":510,"type":469,"label":500,"file":501,"line":511,"wp_function":502},"n5",215,[513,514,515,516],{"from":463,"to":468,"sanitized":296},{"from":468,"to":499,"sanitized":296},{"from":504,"to":507,"sanitized":296},{"from":507,"to":510,"sanitized":475},"high",{"entryPoint":519,"graph":520,"unsanitizedCount":32,"severity":517},"\u003Cclass-bbai-core> (admin\\class-bbai-core.php:0)",{"nodes":521,"edges":534},[522,524,525,526,527,528,530,532],{"id":463,"type":464,"label":523,"file":223,"line":466},"$_GET (x2)",{"id":468,"type":469,"label":470,"file":223,"line":471,"wp_function":472},{"id":499,"type":464,"label":493,"file":223,"line":494},{"id":504,"type":496,"label":497,"file":223,"line":494},{"id":507,"type":469,"label":500,"file":501,"line":401,"wp_function":502},{"id":510,"type":464,"label":529,"file":223,"line":505},"$_POST (x2)",{"id":531,"type":496,"label":508,"file":223,"line":505},"n6",{"id":533,"type":469,"label":500,"file":501,"line":511,"wp_function":502},"n7",[535,536,537,538,539],{"from":463,"to":468,"sanitized":475},{"from":499,"to":504,"sanitized":296},{"from":504,"to":507,"sanitized":296},{"from":510,"to":531,"sanitized":296},{"from":531,"to":533,"sanitized":475},{"entryPoint":541,"graph":542,"unsanitizedCount":397,"severity":517},"\u003Clibrary-tab> (admin\\partials\\library-tab.php:0)",{"nodes":543,"edges":556},[544,546,550,551,553,554],{"id":463,"type":464,"label":465,"file":545,"line":220},"admin\\partials\\library-tab.php",{"id":468,"type":469,"label":547,"file":545,"line":548,"wp_function":549},"get_results() [SQLi]",132,"get_results",{"id":499,"type":464,"label":523,"file":545,"line":220},{"id":504,"type":469,"label":470,"file":545,"line":552,"wp_function":472},549,{"id":507,"type":464,"label":465,"file":545,"line":220},{"id":510,"type":469,"label":470,"file":545,"line":555,"wp_function":472},568,[557,558,559],{"from":463,"to":468,"sanitized":296},{"from":499,"to":504,"sanitized":475},{"from":507,"to":510,"sanitized":296},{"summary":561,"deductions":562},"The \"beepbeep-ai-alt-text-generator\" plugin v4.5.14 exhibits a generally strong security posture with excellent adherence to best practices like prepared statements for SQL queries and proper output escaping. The vast majority of its code signals are positive, indicating a well-developed and security-conscious approach to coding.  The plugin also benefits from a clean vulnerability history, with no previously recorded CVEs, suggesting a history of stable and secure releases.\n\nHowever, the static analysis reveals two key areas of concern. Firstly, there are two AJAX handlers that lack authentication checks, creating a direct attack vector for unauthenticated users. Secondly, the taint analysis identified three high-severity flows with unsanitized paths. While these do not appear to have led to exploitable vulnerabilities in the past, they represent a significant potential risk if an attacker can manipulate input to leverage these unsanitized paths.\n\nIn conclusion, while the plugin is built on a solid foundation of secure coding practices and has a proven track record of security, the two unprotected AJAX endpoints and the high-severity taint flows with unsanitized paths are critical weaknesses that require immediate attention. Addressing these specific vulnerabilities will significantly improve the plugin's overall security.",[563,565],{"reason":564,"points":63},"AJAX handlers without authentication checks",{"reason":566,"points":567},"High severity taint flows with unsanitized paths",12,"2026-03-17T05:43:42.534Z",{"wat":570,"direct":577},{"assetPaths":571,"generatorPatterns":573,"scriptPaths":574,"versionParams":575},[572],"\u002Fwp-content\u002Fplugins\u002Fbeepbeep-ai-alt-text-generator\u002Fassets\u002Fadmin\u002Flogged-out.css",[],[],[576],"beepbeep-ai-alt-text-generator\u002Fassets\u002Fadmin\u002Flogged-out.css?ver=",{"cssClasses":578,"htmlComments":579,"htmlAttributes":580,"restEndpoints":581,"jsGlobals":585,"shortcodeOutput":587},[],[],[],[582,583,584],"\u002Fwp-json\u002Fbeepbeep-ai-alt-text-generator\u002Fv1\u002Fgenerate","\u002Fwp-json\u002Fbeepbeep-ai-alt-text-generator\u002Fv1\u002Fqueue","\u002Fwp-json\u002Fbeepbeep-ai-alt-text-generator\u002Fv1\u002Fauth",[586],"beepbeep_ai_settings",[],{"error":475,"url":589,"statusCode":590,"statusMessage":591,"message":591},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fbeepbeep-ai-alt-text-generator\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":277,"versions":593},[594,599,606,613,620,627,634,641,648,655,662,669,676,683,690,697,704,711,718,725,732,739,746],{"version":6,"download_url":24,"svn_tag_url":595,"released_at":26,"has_diff":296,"diff_files_changed":596,"diff_lines":26,"trac_diff_url":597,"vulnerabilities":598,"is_current":475},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.6.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.6.0&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.6.1",[],{"version":600,"download_url":601,"svn_tag_url":602,"released_at":26,"has_diff":296,"diff_files_changed":603,"diff_lines":26,"trac_diff_url":604,"vulnerabilities":605,"is_current":296},"4.6.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.6.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.6.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.22&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.6.0",[],{"version":607,"download_url":608,"svn_tag_url":609,"released_at":26,"has_diff":296,"diff_files_changed":610,"diff_lines":26,"trac_diff_url":611,"vulnerabilities":612,"is_current":296},"4.5.22","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.22.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.22\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.21&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.22",[],{"version":614,"download_url":615,"svn_tag_url":616,"released_at":26,"has_diff":296,"diff_files_changed":617,"diff_lines":26,"trac_diff_url":618,"vulnerabilities":619,"is_current":296},"4.5.21","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.21.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.21\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.20&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.21",[],{"version":621,"download_url":622,"svn_tag_url":623,"released_at":26,"has_diff":296,"diff_files_changed":624,"diff_lines":26,"trac_diff_url":625,"vulnerabilities":626,"is_current":296},"4.5.20","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.20.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.20\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.14&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.20",[],{"version":628,"download_url":629,"svn_tag_url":630,"released_at":26,"has_diff":296,"diff_files_changed":631,"diff_lines":26,"trac_diff_url":632,"vulnerabilities":633,"is_current":296},"4.5.14","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.14.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.14\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.13&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.14",[],{"version":635,"download_url":636,"svn_tag_url":637,"released_at":26,"has_diff":296,"diff_files_changed":638,"diff_lines":26,"trac_diff_url":639,"vulnerabilities":640,"is_current":296},"4.5.13","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.13.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.13\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.11&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.13",[],{"version":642,"download_url":643,"svn_tag_url":644,"released_at":26,"has_diff":296,"diff_files_changed":645,"diff_lines":26,"trac_diff_url":646,"vulnerabilities":647,"is_current":296},"4.5.11","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.11.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.11\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.8&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.11",[],{"version":649,"download_url":650,"svn_tag_url":651,"released_at":26,"has_diff":296,"diff_files_changed":652,"diff_lines":26,"trac_diff_url":653,"vulnerabilities":654,"is_current":296},"4.5.8","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.8.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.8\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.6&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.8",[],{"version":656,"download_url":657,"svn_tag_url":658,"released_at":26,"has_diff":296,"diff_files_changed":659,"diff_lines":26,"trac_diff_url":660,"vulnerabilities":661,"is_current":296},"4.5.6","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.6.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.6\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.5&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.6",[],{"version":663,"download_url":664,"svn_tag_url":665,"released_at":26,"has_diff":296,"diff_files_changed":666,"diff_lines":26,"trac_diff_url":667,"vulnerabilities":668,"is_current":296},"4.5.5","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.5.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.5\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.3&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.5",[],{"version":670,"download_url":671,"svn_tag_url":672,"released_at":26,"has_diff":296,"diff_files_changed":673,"diff_lines":26,"trac_diff_url":674,"vulnerabilities":675,"is_current":296},"4.5.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.2&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.3",[],{"version":677,"download_url":678,"svn_tag_url":679,"released_at":26,"has_diff":296,"diff_files_changed":680,"diff_lines":26,"trac_diff_url":681,"vulnerabilities":682,"is_current":296},"4.5.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.0&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.2",[],{"version":684,"download_url":685,"svn_tag_url":686,"released_at":26,"has_diff":296,"diff_files_changed":687,"diff_lines":26,"trac_diff_url":688,"vulnerabilities":689,"is_current":296},"4.5.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.5.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.5.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.14&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.5.0",[],{"version":691,"download_url":692,"svn_tag_url":693,"released_at":26,"has_diff":296,"diff_files_changed":694,"diff_lines":26,"trac_diff_url":695,"vulnerabilities":696,"is_current":296},"4.4.14","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.14.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.14\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.13&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.14",[],{"version":698,"download_url":699,"svn_tag_url":700,"released_at":26,"has_diff":296,"diff_files_changed":701,"diff_lines":26,"trac_diff_url":702,"vulnerabilities":703,"is_current":296},"4.4.13","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.13.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.13\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.12&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.13",[],{"version":705,"download_url":706,"svn_tag_url":707,"released_at":26,"has_diff":296,"diff_files_changed":708,"diff_lines":26,"trac_diff_url":709,"vulnerabilities":710,"is_current":296},"4.4.12","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.12.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.12\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.11&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.12",[],{"version":712,"download_url":713,"svn_tag_url":714,"released_at":26,"has_diff":296,"diff_files_changed":715,"diff_lines":26,"trac_diff_url":716,"vulnerabilities":717,"is_current":296},"4.4.11","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.11.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.11\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.8&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.11",[],{"version":719,"download_url":720,"svn_tag_url":721,"released_at":26,"has_diff":296,"diff_files_changed":722,"diff_lines":26,"trac_diff_url":723,"vulnerabilities":724,"is_current":296},"4.4.8","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.8.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.8\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.4&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.8",[],{"version":726,"download_url":727,"svn_tag_url":728,"released_at":26,"has_diff":296,"diff_files_changed":729,"diff_lines":26,"trac_diff_url":730,"vulnerabilities":731,"is_current":296},"4.4.4","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.4.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.4\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.3&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.4",[],{"version":733,"download_url":734,"svn_tag_url":735,"released_at":26,"has_diff":296,"diff_files_changed":736,"diff_lines":26,"trac_diff_url":737,"vulnerabilities":738,"is_current":296},"4.4.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.2&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.3",[],{"version":740,"download_url":741,"svn_tag_url":742,"released_at":26,"has_diff":296,"diff_files_changed":743,"diff_lines":26,"trac_diff_url":744,"vulnerabilities":745,"is_current":296},"4.4.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.1&new_path=%2Fbeepbeep-ai-alt-text-generator%2Ftags%2F4.4.2",[],{"version":747,"download_url":748,"svn_tag_url":749,"released_at":26,"has_diff":296,"diff_files_changed":750,"diff_lines":26,"trac_diff_url":26,"vulnerabilities":751,"is_current":296},"4.4.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeepbeep-ai-alt-text-generator.4.4.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fbeepbeep-ai-alt-text-generator\u002Ftags\u002F4.4.1\u002F",[],[]]