{"id":348482,"date":"2026-08-10T18:40:19","date_gmt":"2026-08-10T18:40:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/altcraft-ai-alt-text-generator\/"},"modified":"2026-08-28T16:24:52","modified_gmt":"2026-08-28T16:24:52","slug":"wilderwoods-alttext","status":"publish","type":"plugin","link":"https:\/\/ne.wordpress.org\/plugins\/wilderwoods-alttext\/","author":23533154,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.2","stable_tag":"1.0.2","tested":"7.1","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"WilderWoods AltText","header_author":"WilderWoods Website Development","header_description":"Generate meaningful, SEO-friendly alt text in the background with intelligent queue processing, automatic retries, and an intuitive Media Library workflow.","assets_banners_color":"cfcdbe","last_updated":"2026-08-28 16:24:52","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/wilderwoodswebdev.com","rating":5,"author_block_rating":0,"active_installs":10,"downloads":213,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"danewoods","date":"2026-08-12 12:59:55","revision":3643454},"1.0.1":{"tag":"1.0.1","author":"danewoods","date":"2026-08-17 12:33:06","revision":3651140},"1.0.2":{"tag":"1.0.2","author":"danewoods","date":"2026-08-28 16:24:52","revision":3670675}},"upgrade_notice":{"1.0.2":"<p>Adds Show\/Hide and Copy controls to the Account Sync Key and improves UI polish with native Dashicons.<\/p>","1.0.1":"<p>Fixes bulk queue cancellation and improves compatibility with strict host firewalls (e.g. SiteGround).<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3641010,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3641010,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3641010,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3641010,"resolution":"1","location":"assets","locale":"","width":1920,"height":890},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3641010,"resolution":"2","location":"assets","locale":"","width":1920,"height":893},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3643333,"resolution":"3","location":"assets","locale":"","width":1200,"height":894}},"screenshots":{"1":"Bulk generation dashboard with live progress and credit balance.","2":"Media Library list view showing per-image alt text and one-click generation.","3":"Settings page showing Sync Key, connection status, generation options, and available credit packs."}},"plugin_section":[],"plugin_tags":[1953,232951,17214,186,1956],"plugin_category":[34,55],"plugin_contributors":[275066],"plugin_business_model":[],"class_list":["post-348482","plugin","type-plugin","status-publish","hentry","plugin_tags-accessibility","plugin_tags-ai-alt-text","plugin_tags-alt-text","plugin_tags-seo","plugin_tags-wcag","plugin_category-accessibility","plugin_category-seo-and-marketing","plugin_contributors-danewoods","plugin_committers-danewoods"],"banners":{"banner":"https:\/\/ps.w.org\/wilderwoods-alttext\/assets\/banner-772x250.png?rev=3641010","banner_2x":"https:\/\/ps.w.org\/wilderwoods-alttext\/assets\/banner-1544x500.png?rev=3641010","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wilderwoods-alttext\/assets\/icon-256x256.png?rev=3641010","icon_2x":"https:\/\/ps.w.org\/wilderwoods-alttext\/assets\/icon-256x256.png?rev=3641010","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/wilderwoods-alttext\/assets\/screenshot-1.png?rev=3641010","caption":"Bulk generation dashboard with live progress and credit balance."},{"src":"https:\/\/ps.w.org\/wilderwoods-alttext\/assets\/screenshot-2.png?rev=3641010","caption":"Media Library list view showing per-image alt text and one-click generation."},{"src":"https:\/\/ps.w.org\/wilderwoods-alttext\/assets\/screenshot-3.png?rev=3643333","caption":"Settings page showing Sync Key, connection status, generation options, and available credit packs."}],"raw_content":"<!--section=description-->\n<p>Generate accessible AI alt text for your WordPress Media Library in bulk or one click - without API keys, subscriptions, or complicated setup. It analyzes your existing images and generates accessible, natural-sounding alt text, plus optional titles, captions, and descriptions, to help you work towards WCAG compliance.<\/p>\n\n<p>Connect your site with one click and get 40 free credits to start generating.<\/p>\n\n<p>Credits don't expire, and one credit balance can be shared across multiple WordPress sites using your Sync Key. Bulk jobs run in the background, so you can process large Media Libraries without keeping your browser open.<\/p>\n\n<p><strong>This plugin connects to a remote cloud service to function.<\/strong> Using it requires an explicit opt-in: click \"Save Key &amp; Connect to Cloud\" on the Settings page, or click \"Generate\" on any image. Each image generation uses one credit. See \"External Services\" below for exactly what's sent, where, and why.<\/p>\n\n<h4>\ud83d\udee0\ufe0f Key Features<\/h4>\n\n<ul>\n<li><strong>Bulk Generation:<\/strong> Queue your entire Media Library for background processing.<\/li>\n<li><strong>On-Demand Generation:<\/strong> Generate metadata for individual images directly from the Media Library grid or list view.<\/li>\n<li><strong>Smart &amp; Respectful:<\/strong> Existing metadata isn't overwritten unless <strong>Force overwrite<\/strong> is enabled.<\/li>\n<li><strong>Total Control:<\/strong> Choose independently which metadata fields to generate.<\/li>\n<li><strong>Accessibility First:<\/strong> Generate descriptive, meaningful alt text to help make content more accessible to screen reader users and work towards WCAG compliance.<\/li>\n<li><strong>Multi-Site Credits:<\/strong> Share one credit balance across multiple WordPress sites using your Sync Key.<\/li>\n<\/ul>\n\n<h4>\ud83d\ude80 How It Works<\/h4>\n\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>Connect your site in Settings to receive your 40 free credits.<\/li>\n<li>Generate metadata for individual images or run a Bulk Job and let the AI process your images.<\/li>\n<\/ol>\n\n<h4>\ud83d\udd12 External Services &amp; Privacy<\/h4>\n\n<p>This plugin connects to a remote cloud service to function. AI processing happens securely in the cloud. By using this service, you agree to our <a href=\"https:\/\/wilderwoodswebdev.com\/wilderwoods-alttext\/wilderwoods-alttext-terms-of-service\/\">Terms of Service<\/a> and <a href=\"https:\/\/wilderwoodswebdev.com\/wilderwoods-alttext\/wilderwoods-alttext-privacy-policy\/\">Privacy Policy<\/a>. Specifically:<\/p>\n\n<ul>\n<li><strong>Image analysis<\/strong>: When generating metadata, the image's public URL and a short site summary (site name, homepage description, navigation labels - just enough for the AI to understand your niche, e.g. woodworking rather than travel) are sent to WilderWoods AltText Cloud, which forwards the image to Google's Gemini API and returns the generated text. No image files are sent directly from your server to Google. <a href=\"https:\/\/policies.google.com\/privacy\">Google's Privacy Policy<\/a> applies.<\/li>\n<li><strong>Account &amp; payments<\/strong>: Your site is identified by a randomly generated Sync Key - never your name, email, or WordPress account. Credit pack purchases are processed by <a href=\"https:\/\/freemius.com\">Freemius<\/a>; see their <a href=\"https:\/\/freemius.com\/privacy\/\">Privacy Policy<\/a> and <a href=\"https:\/\/freemius.com\/terms\/\">Terms of Service<\/a>.<\/li>\n<li><strong>No visitor content is sent.<\/strong> Only image URLs and the site summary above are transmitted, and only when you explicitly generate metadata, start a bulk job, or connect via Settings.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to <code>\/wp-content\/plugins\/wilderwoods-alttext<\/code>, or install directly through the Plugins screen in WordPress.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Visit <strong>Settings \u2192 WilderWoods AltText Settings<\/strong> and click <strong>Save Key &amp; Connect to Cloud<\/strong> to register your site and receive your 40 free credits.<\/li>\n<li>Open your Media Library and click <strong>Generate Alt Text<\/strong> to generate metadata for any image.<\/li>\n<li>To configure which metadata fields are generated or run a bulk generation job, visit <strong>Media \u2192 WilderWoods AltText<\/strong> or <strong>Settings \u2192 WilderWoods AltText Settings<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20google%20gemini%20api%20key%3F\"><h3>Do I need a Google Gemini API key?<\/h3><\/dt>\n<dd><p>No. The cloud service handles the Gemini API connection for you.<\/p><\/dd>\n<dt id=\"can%20i%20process%20my%20entire%20media%20library%3F\"><h3>Can I process my entire Media Library?<\/h3><\/dt>\n<dd><p>Yes. Queue your existing Media Library for background processing, allowing large libraries to be processed even after you close your browser.<\/p><\/dd>\n<dt id=\"do%20my%20credits%20expire%3F\"><h3>Do my credits expire?<\/h3><\/dt>\n<dd><p>No. Purchased credits don't expire while the service is active.<\/p><\/dd>\n<dt id=\"can%20i%20use%20one%20credit%20pack%20across%20multiple%20sites%3F\"><h3>Can I use one credit pack across multiple sites?<\/h3><\/dt>\n<dd><p>Yes. Use your Sync Key to share one credit balance across the WordPress sites you manage.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20run%20out%20of%20credits%3F\"><h3>What happens when I run out of credits?<\/h3><\/dt>\n<dd><p>Generation stops with a clear message prompting you to top up. Nothing breaks, and any bulk job in progress halts cleanly.<\/p><\/dd>\n<dt id=\"does%20this%20overwrite%20metadata%20i%27ve%20already%20written%3F\"><h3>Does this overwrite metadata I've already written?<\/h3><\/dt>\n<dd><p>Not by default. Bulk generation only fills fields that are currently empty unless you enable <strong>Force overwrite<\/strong> in Settings. Manually clicking <strong>Generate<\/strong> or <strong>Regenerate<\/strong> on a single image always overwrites that image because it's an intentional action.<\/p><\/dd>\n<dt id=\"is%20my%20data%20sent%20anywhere%3F\"><h3>Is my data sent anywhere?<\/h3><\/dt>\n<dd><p>See the <strong>External Services<\/strong> section above for a full explanation of what is sent, where it is sent, and why.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Improved: Account Sync Key is now masked by default with Show\/Hide and Copy controls to prevent accidental exposure in screenshots and screen shares.<\/li>\n<li>Improved: Replaced UI emojis with native WordPress Dashicons for a cleaner, more professional admin aesthetic.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fixed: Image generation now works on hosts with strict security firewalls (e.g. SiteGround) via a new hybrid image delivery architecture.<\/li>\n<li>Fixed: Resolved a race condition where cancelling the bulk queue while an image was processing could cause the queue to resume unexpectedly.<\/li>\n<li>Improved: More robust local media file detection for sites using media folder plugins or that have been migrated between hosts.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Bulk AI alt text generator. No API keys. 40 free credits. Credits don&#039;t expire. Share one balance across sites. No subscriptions.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/348482","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=348482"}],"author":[{"embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/danewoods"}],"wp:attachment":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=348482"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=348482"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=348482"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=348482"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=348482"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=348482"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}