{"id":337965,"date":"2026-07-23T18:28:18","date_gmt":"2026-07-23T18:28:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/eu-ai-label\/"},"modified":"2026-07-23T18:27:53","modified_gmt":"2026-07-23T18:27:53","slug":"eu-ai-label","status":"publish","type":"plugin","link":"https:\/\/de.wordpress.org\/plugins\/eu-ai-label\/","author":23529995,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.3.0","stable_tag":"0.3.0","tested":"7.0.2","requires":"6.5","requires_php":"8.1","requires_plugins":null,"header_name":"EU AI Label","header_author":"EU AI Label","header_description":"Adds visible, localized AI labels to images in the Media Library, in the spirit of EU AI Act Article 50 transparency obligations.","assets_banners_color":"212a61","last_updated":"2026-07-23 18:27:53","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/euailabel.app\/","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":40,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.3.0":{"tag":"0.3.0","author":"lukjak","date":"2026-07-23 18:27:53"}},"upgrade_notice":{"0.2.0":"<p>Media Library label column, redesigned settings page, and a 10-image free-plan cap (existing labels keep working).<\/p>","0.1.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3620383,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3620383,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3620383,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3620383,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3620383,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.3.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3620383,"resolution":"1","location":"assets","locale":"","width":1480,"height":1120},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3620383,"resolution":"2","location":"assets","locale":"","width":880,"height":1160}},"screenshots":{"1":"The AI transparency badge rendered on a front-end image (with the optional Pro alteration tooltip).","2":"Setting the AI label and alteration details on an attachment in the Media Library."}},"plugin_section":[],"plugin_tags":[2353,254918,163,233,25098],"plugin_category":[50],"plugin_contributors":[78154,273028],"plugin_business_model":[],"class_list":["post-337965","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-eu-ai-act","plugin_tags-images","plugin_tags-media-library","plugin_tags-transparency","plugin_category-media","plugin_contributors-freemius","plugin_contributors-lukjak","plugin_committers-lukjak"],"banners":{"banner":"https:\/\/ps.w.org\/eu-ai-label\/assets\/banner-772x250.png?rev=3620383","banner_2x":"https:\/\/ps.w.org\/eu-ai-label\/assets\/banner-1544x500.png?rev=3620383","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/eu-ai-label\/assets\/icon.svg?rev=3620383","icon":"https:\/\/ps.w.org\/eu-ai-label\/assets\/icon.svg?rev=3620383","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/eu-ai-label\/assets\/screenshot-1.png?rev=3620383","caption":"The AI transparency badge rendered on a front-end image (with the optional Pro alteration tooltip)."},{"src":"https:\/\/ps.w.org\/eu-ai-label\/assets\/screenshot-2.png?rev=3620383","caption":"Setting the AI label and alteration details on an attachment in the Media Library."}],"raw_content":"<!--section=description-->\n<p>EU AI Label lets you flag images in your WordPress Media Library as AI generated or AI modified. Labeled images are wrapped on the front end with a clean badge overlay so visitors can see at a glance which visuals involved AI.<\/p>\n\n<p>Built for EU WooCommerce stores that want a simple, honest way to disclose AI-generated product imagery \u2014 no C2PA, no cryptography, no external services. Just a clear visual mark plus attachment metadata.<\/p>\n\n<p><strong>Features<\/strong><\/p>\n\n<ul>\n<li>Per-image labeling directly in the Media Library, for unlimited images.<\/li>\n<li>Three-state taxonomy: AI generated, AI modified, or No AI (no badge).<\/li>\n<li>Server-side rendering \u2014 no front-end JavaScript required. Both featured\/gallery images (via <code>wp_get_attachment_image<\/code>) and in-content images (Image blocks, galleries, and classic-editor images) are covered.<\/li>\n<li>An accessibility-first badge: always visible (no hover needed), high-contrast on any photo, <code>role=\"img\"<\/code> with a screen-reader label, and a readable minimum size. The wording and pill shape mirror the EU standardized AI labels.<\/li>\n<li>Fully localized badge text \u2014 English, Polish, German, French, Spanish, Italian, and Dutch \u2014 following the site or user locale.<\/li>\n<\/ul>\n\n<p>Labeling is manual and per-image by design: you stay in control of exactly what is disclosed.<\/p>\n\n<p>This plugin is part of the euailabel.app AI Act toolkit for e-commerce.<\/p>\n\n<p>EU AI Label is an independent tool that helps with transparency disclosures in the spirit of the EU AI Act (Regulation (EU) 2024\/1689). It is not affiliated with, endorsed by, or an official labeling scheme of the European Union or any EU institution.<\/p>\n\n<p><strong>EU AI Label Pro<\/strong><\/p>\n\n<p>A Pro upgrade adds, for stores that need more:<\/p>\n\n<ul>\n<li>An adaptive badge that auto-adjusts to light or dark images.<\/li>\n<li>Bulk labeling from the Media Library (list and grid views).<\/li>\n<li>Optional \"how it was altered\" details shown in a badge tooltip (e.g. background removed, color modified).<\/li>\n<li>A tamper-evident audit log of every label change (who, what, when), sealed with a hash chain.<\/li>\n<\/ul>\n\n<p>The free plugin is a complete, unrestricted disclosure tool; Pro adds the refinements above. All Pro functionality lives in a separately distributed build \u2014 nothing in the free plugin is locked or limited.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>eu-ai-label<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install through the Plugins screen.<\/li>\n<li>Activate the plugin through the <em>Plugins<\/em> screen in WordPress.<\/li>\n<li>Open any image in the Media Library and set its <em>AI label<\/em> to AI generated or AI modified.<\/li>\n<li>Labeled images get the badge automatically on the front end. There is nothing else to configure.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20detect%20ai%20images%20automatically%3F\"><h3>Does this detect AI images automatically?<\/h3><\/dt>\n<dd><p>No. Labeling is manual and per-image, by design. You decide what is disclosed.<\/p><\/dd>\n<dt id=\"is%20the%20free%20version%20limited%3F\"><h3>Is the free version limited?<\/h3><\/dt>\n<dd><p>No. The free plugin is fully functional: you can label as many images as you like, and every feature it ships is available to everyone. Pro is a separate build that adds extras (adaptive badge, bulk labeling, alteration tooltips, an audit log). Labels always keep working and stay editable, even if you drop from Pro back to free.<\/p><\/dd>\n<dt id=\"can%20i%20change%20the%20badge%20text%20or%20its%20appearance%3F\"><h3>Can I change the badge text or its appearance?<\/h3><\/dt>\n<dd><p>No. The badge ships with a single, fixed, accessibility-first style, and its text is localized automatically. This is deliberate: a consistent, high-contrast disclosure keeps the label reliable across languages and themes, and cannot be accidentally styled into something illegible.<\/p><\/dd>\n<dt id=\"which%20images%20get%20the%20badge%3F\"><h3>Which images get the badge?<\/h3><\/dt>\n<dd><p>Any image attached from your Media Library that you have labeled \u2014 whether it is a featured image, appears in a gallery, or is placed in post content as an Image block or classic-editor image. Externally hotlinked images and CSS background images have no attachment record, so they cannot be labeled.<\/p><\/dd>\n<dt id=\"is%20this%20legal%20advice%20or%20a%20guarantee%20of%20compliance%3F\"><h3>Is this legal advice or a guarantee of compliance?<\/h3><\/dt>\n<dd><p>No. EU AI Label is a tool to help you disclose AI-generated imagery clearly. It does not constitute legal advice, and using it does not by itself guarantee compliance with the EU AI Act or any other law. Consult a qualified professional about your obligations.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20labels%20when%20i%20uninstall%3F\"><h3>What happens to labels when I uninstall?<\/h3><\/dt>\n<dd><p>Plugin settings are removed on uninstall. Per-image labels stored in attachment metadata are preserved so they survive a reinstall.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.3.0<\/h4>\n\n<ul>\n<li>Changed: removed the free-plan 10-image limit \u2014 the free plugin now labels unlimited images and is fully functional, per WordPress.org guidelines.<\/li>\n<\/ul>\n\n<h4>0.2.3<\/h4>\n\n<ul>\n<li>New: redesigned upgrade page \u2014 real yearly prices instead of per-month framing, prices in EUR by default (USD still selectable), and the plugin icon on all Freemius screens.<\/li>\n<\/ul>\n\n<h4>0.2.2<\/h4>\n\n<ul>\n<li>Changed: the bundled Freemius SDK moved from includes\/freemius to vendor\/freemius, the wordpress.org convention for third-party libraries.<\/li>\n<\/ul>\n\n<h4>0.2.1<\/h4>\n\n<ul>\n<li>Fixed: removed the Author URI plugin header (duplicated the Plugin URI, flagged by wp.org Plugin Check).<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>New: \"AI label\" column with status chips in the Media Library list view.<\/li>\n<li>New: redesigned settings page \u2014 live badge preview, labeled-image counts, clearer plan overview.<\/li>\n<li>New: free plan labels up to 10 images; Pro is unlimited. Existing labels always keep working.<\/li>\n<li>Improved: audit log (Pro) shows label changes as status chips.<\/li>\n<li>Fixed: admin thumbnails are no longer wrapped with front-end badge markup (stray badge text under Media Library thumbnails).<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release: per-image AI labeling, localized accessibility-first front-end badge covering featured, gallery, and in-content images.<\/li>\n<\/ul>","raw_excerpt":"Add visible, localized AI labels to your Media Library images, in the spirit of EU AI Act Article 50 transparency obligations.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/337965","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=337965"}],"author":[{"embeddable":true,"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/lukjak"}],"wp:attachment":[{"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=337965"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=337965"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=337965"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=337965"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=337965"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/de.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=337965"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}