{"id":347955,"date":"2026-08-10T16:28:17","date_gmt":"2026-08-10T16:28:17","guid":{"rendered":"https:\/\/de.wordpress.org\/plugins\/ai-transparency-labels\/"},"modified":"2026-10-04T11:04:38","modified_gmt":"2026-10-04T11:04:38","slug":"oms-labels-ai-transparency","status":"publish","type":"plugin","link":"https:\/\/vec.wordpress.org\/plugins\/oms-labels-ai-transparency\/","author":23540885,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"3.6.25","stable_tag":"3.6.25","tested":"7.1.2","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"OMS Labels AI Transparency","header_author":"Steven Sonntag \/ Onlinemarketing-Sonntag","header_description":"Local EU AI icons, visible notices for image, audio, video and posts, an editorial review log and permanently labelled image copies.","assets_banners_color":"10202d","last_updated":"2026-10-04 11:04:38","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/onlinemarketing-sonntag.de\/plugins\/ki_transparenz","header_author_uri":"https:\/\/onlinemarketing-sonntag.de\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":256,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"3.6.23":{"tag":"3.6.23","author":"stewn","date":"2026-08-10 17:03:40","revision":3640935},"3.6.25":{"tag":"3.6.25","author":"stewn","date":"2026-10-04 11:04:38","revision":3727341}},"upgrade_notice":{"3.6.25":"<p>Reliability release for the browser overlay: labels stay on the image while scrolling, in carousels and sliders, with parallax effects, and when optimisation plugins modify or delay the stylesheet. No new features, no change to existing settings.<\/p>","3.6.23":"<p>First public WordPress.org release with unified plugin identifiers, user-controlled legacy-package handling and reliable permanent image-copy generation.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3640935,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3640935,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3640892,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3640897,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["3.6.23","3.6.25"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3640935,"resolution":"1","location":"assets","locale":"","width":1200,"height":850},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3640935,"resolution":"2","location":"assets","locale":"","width":1200,"height":850},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3640935,"resolution":"3","location":"assets","locale":"","width":1200,"height":850},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3640935,"resolution":"4","location":"assets","locale":"","width":1200,"height":650},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3640935,"resolution":"5","location":"assets","locale":"","width":1200,"height":850},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3640935,"resolution":"6","location":"assets","locale":"","width":1200,"height":850}},"screenshots":{"1":"Central media-labelling settings with a clear status overview and local plugin artwork.","2":"Responsive appearance controls and live previews for article, search and tile contexts.","3":"Permanent image-copy settings for format, position, contrast and delivery while originals stay untouched.","4":"AI Media Review with classification totals, local provenance scan, filters and image-copy status.","5":"Editorial post notices, traceable review details and multilingual output controls.","6":"Advanced privacy, data-cleanup, technical compatibility and administration-design settings."}},"plugin_section":[],"plugin_tags":[275056,254921,96456,233,286],"plugin_category":[45],"plugin_contributors":[275057],"plugin_business_model":[],"class_list":["post-347955","plugin","type-plugin","status-publish","hentry","plugin_tags-ai-labeling","plugin_tags-ai-transparency","plugin_tags-editorial-workflow","plugin_tags-media-library","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-stewn","plugin_committers-stewn"],"banners":{"banner":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/banner-772x250.jpg?rev=3640897","banner_2x":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/banner-1544x500.jpg?rev=3640892","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/icon-128x128.png?rev=3640935","icon_2x":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/icon-256x256.png?rev=3640935","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/screenshot-1.png?rev=3640935","caption":"Central media-labelling settings with a clear status overview and local plugin artwork."},{"src":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/screenshot-2.png?rev=3640935","caption":"Responsive appearance controls and live previews for article, search and tile contexts."},{"src":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/screenshot-3.png?rev=3640935","caption":"Permanent image-copy settings for format, position, contrast and delivery while originals stay untouched."},{"src":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/screenshot-4.png?rev=3640935","caption":"AI Media Review with classification totals, local provenance scan, filters and image-copy status."},{"src":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/screenshot-5.png?rev=3640935","caption":"Editorial post notices, traceable review details and multilingual output controls."},{"src":"https:\/\/ps.w.org\/oms-labels-ai-transparency\/assets\/screenshot-6.png?rev=3640935","caption":"Advanced privacy, data-cleanup, technical compatibility and administration-design settings."}],"raw_content":"<!--section=description-->\n<h4>AI transparency for WordPress<\/h4>\n\n<p>OMS Labels AI Transparency helps publishers clearly identify AI-generated and AI-modified content and document editorial decisions directly in WordPress.<\/p>\n\n<p>Add responsive notices to images, audio and video, review media in a dedicated workflow and optionally create permanently labelled image copies without modifying the originals.<\/p>\n\n<p>Keep review details for posts and media, including classification, reviewer, review date, sources and internal notes. Explicit editorial decisions always remain under the site owner's control.<\/p>\n\n<h4>Highlights<\/h4>\n\n<ul>\n<li>Visible bars or compact badges with local AI, AI GENERATED and AI MODIFIED icons.<\/li>\n<li>Five clear media-review states with filters, columns and bulk workflows.<\/li>\n<li>Local checks for IPTC\/XMP hints, possible C2PA data and known generator signatures.<\/li>\n<li>Optional permanently labelled JPEG, PNG, WebP and AVIF copies while originals remain untouched.<\/li>\n<li>Editorial review records, revision approval, change warnings and an approval log.<\/li>\n<li>Support for Gutenberg, featured images, Elementor, lazy loading and common WooCommerce views.<\/li>\n<li>Live previews, contrast guidance, Site Health checks and accessible controls.<\/li>\n<li>Quick Edit, Bulk Edit, custom post types, RSS notices and safe CSV exports.<\/li>\n<\/ul>\n\n<h3>Deutsche Kurzbeschreibung<\/h3>\n\n<h4>KI-Inhalte in WordPress sichtbar und nachvollziehbar kennzeichnen<\/h4>\n\n<p>OMS Labels AI Transparency unterst\u00fctzt Redaktionen dabei, KI-generierte und KI-bearbeitete Medien sowie Beitr\u00e4ge klar zu kennzeichnen und redaktionelle Entscheidungen direkt in WordPress zu dokumentieren.<\/p>\n\n<p>Responsive Hinweise und kompakte Badges lassen sich f\u00fcr Bilder, Audio und Video an das eigene Theme anpassen. Ein zentraler Pr\u00fcfbereich b\u00fcndelt Klassifizierung, lokale Herkunftshinweise, Filter und den Status dauerhaft gekennzeichneter Bildkopien. Die Originaldateien bleiben dabei unver\u00e4ndert.<\/p>\n\n<p>Pr\u00fcfdetails wie Einstufung, verantwortliche Person, Datum, Quellen und interne Notizen bleiben unter der Kontrolle der Website-Betreiber. Das Plugin arbeitet lokal und kommt ohne CDN, externe Schriftarten, Analyse-Dienste, Lizenzserver oder Drittanbieter-API aus.<\/p>\n\n<h3>Privacy and data handling<\/h3>\n\n<p>OMS Labels AI Transparency does not use a CDN, remote fonts, analytics, a licence server, cookies or third-party API calls. Icons, scripts and styles are stored locally, and media checks read files on the website's own server only.<\/p>\n\n<h3>Important note<\/h3>\n\n<p>This plugin supports labelling, documentation and editorial workflows. It is not legal advice, does not decide whether a disclosure obligation applies and cannot guarantee compliance with the EU AI Act or any other law.<\/p>\n\n<p>The plugin uses English source strings. Community translations are provided through translate.wordpress.org and installed by WordPress for the selected site language.<\/p>\n\n<h3>External references<\/h3>\n\n<p>European Commission - EU icons for labelling AI-generated content:\nhttps:\/\/digital-strategy.ec.europa.eu\/en\/policies\/eu-icons-labelling-ai-generated-content<\/p>\n\n<p>European Commission - Code of Practice on Transparency of AI-Generated Content:\nhttps:\/\/digital-strategy.ec.europa.eu\/en\/policies\/code-practice-ai-generated-content<\/p>\n\n<p>IHK Koeln - Transparency obligations under the AI Act (German):\nhttps:\/\/www.ihk.de\/koeln\/hauptnavigation\/digitalisierung-und-innovation\/digitalisierung\/transparenzpflichten-nach-der-ki-verordnung-7100068<\/p>\n\n<p>Icon licensing notes are stored in <code>assets\/icons\/LICENSE.txt<\/code>. Notes for the plugin artwork are stored in <code>assets\/license-notes.txt<\/code>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>Open <strong>Settings &gt; AI Transparency<\/strong>.<\/li>\n<li>Choose the selection mode and appearance.<\/li>\n<li>Classify media in the media library.<\/li>\n<li>Generate image copies under <strong>Media &gt; AI Media Review<\/strong> when needed.<\/li>\n<li>Classify and approve posts in the editor or post list.<\/li>\n<li>Clear page, optimisation and CDN caches after design changes.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20make%20a%20website%20legally%20compliant%3F\"><h3>Does the plugin make a website legally compliant?<\/h3><\/dt>\n<dd><p>No. It supports labelling, documentation and editorial workflows. It is not legal advice and does not decide whether a legal disclosure obligation applies.<\/p><\/dd>\n<dt id=\"are%20media%20files%20classified%20automatically%3F\"><h3>Are media files classified automatically?<\/h3><\/dt>\n<dd><p>Not by default. The local scan can detect provenance hints and known generator signatures, but these are review suggestions. The editor remains responsible for classification.<\/p><\/dd>\n<dt id=\"are%20original%20images%20modified%3F\"><h3>Are original images modified?<\/h3><\/dt>\n<dd><p>No. Browser overlays do not alter files. Permanently labelled images are separate WordPress attachments stored in the plugin-specific uploads directory.<\/p><\/dd>\n<dt id=\"what%20happens%20after%20changing%20the%20copy%20design%3F\"><h3>What happens after changing the copy design?<\/h3><\/dt>\n<dd><p>The copy signature marks existing copies as outdated. They can be renewed in bulk while retaining their attachment IDs.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20verify%20c2pa%20cryptographically%3F\"><h3>Does the plugin verify C2PA cryptographically?<\/h3><\/dt>\n<dd><p>No. It can detect possible C2PA data and read IPTC\/XMP hints, but full cryptographic C2PA validation is not included.<\/p><\/dd>\n<dt id=\"are%20the%20local%20eu%20icons%20mandatory%3F\"><h3>Are the local EU icons mandatory?<\/h3><\/dt>\n<dd><p>No. The European Commission describes the icons as voluntary. An icon does not itself establish legal compliance.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>3.6.25<\/h4>\n\n<ul>\n<li>Fixed: labels could collapse into a narrow vertical strip on shrink-wrapped image containers (Gutenberg figures, gallery tiles, WooCommerce thumbnails, Elementor image widgets) when a right-aligned position was used, which is the default.<\/li>\n<li>Fixed: labels no longer detach from the image while scrolling. Position is now recalculated on scroll (including inner scroll containers), on CSS transitions and animations, after web font loading and when returning from the back\/forward cache.<\/li>\n<li>Fixed: the anchoring reference frame is enforced and verified at runtime. Labels stay on the image even when a theme sets <code>position: static !important<\/code>, or when <code>assets\/frontend.css<\/code> is delayed, combined, stripped by \"Remove Unused CSS\" or blocked.<\/li>\n<li>Added: critical anchoring CSS is now inlined in the head, so the overlay is positioned correctly independently of the external stylesheet. Can be adjusted or removed via the <code>kit_ai_overlay_critical_css<\/code> filter.<\/li>\n<li>Added: if no reliable reference frame can be established, the label falls back to the normal text flow directly after the media instead of floating over unrelated page content. A label is never silently dropped.<\/li>\n<li>Improved: <code>display: inline<\/code> elements are no longer used as an anchoring reference, because a fragmented inline box has no unambiguous containing block for absolutely positioned children.<\/li>\n<li>Improved: labels are recreated after a media node was moved or rebuilt by masonry, gallery filters or AJAX, instead of disappearing permanently.<\/li>\n<li>Improved: labels also follow media that are moved silently by JavaScript, without a scroll event or a CSS transition \u2014 drag sliders, free-mode carousels and parallax scripts. A low-frequency safety net covers these cases at a measured cost of 0.8 ms of script time per second and no additional layout or style recalculations.<\/li>\n<li>Improved: measurement and DOM writes are separated and values are only written when they actually changed. On archive pages this removes layout thrashing; collision checks against fixed and sticky elements are now batched into a single frame.<\/li>\n<li>Improved: the early scan during HTML parsing is coalesced into animation frames, so the parser is no longer interrupted for every single node.<\/li>\n<li>Maintenance: version numbers in the asset file headers were out of sync with the plugin version and have been corrected. Tested up to WordPress 7.1.<\/li>\n<li>Note: after updating, clear the cache of any page, optimisation and CDN plugin. Optimisers that rewrite <code>assets\/frontend.js<\/code> and <code>assets\/frontend.css<\/code> into their own minify directory keep serving the previous version until their cache is purged.<\/li>\n<\/ul>\n\n<h4>3.6.23<\/h4>\n\n<ul>\n<li>Initial public WordPress.org release.<\/li>\n<li>Keeps the site owner in control when an older package is detected; nothing is deactivated automatically.<\/li>\n<li>Uses consistent plugin identifiers and the <code>[kit_ai_transparency_notice]<\/code> shortcode.<\/li>\n<li>Improves permanent image-copy generation with a reliable Imagick path and GD fallback.<\/li>\n<\/ul>","raw_excerpt":"Label AI-generated and AI-modified media in WordPress with visible notices, editorial review records and privacy-friendly local tools.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/347955","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=347955"}],"author":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/stewn"}],"wp:attachment":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=347955"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=347955"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=347955"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=347955"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=347955"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=347955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}