外掛標籤
開發者團隊
原文外掛簡介
Pick one option on an image – generated by AI, or a real image modified using AI – and every place that image shows up on your site carries the matching disclosure label – featured images, images in content, galleries, images your theme renders through the standard WordPress functions.
The mark is stored on the attachment, not on the post. Mark a file once and it stays marked wherever it is reused. Deleting the plugin leaves those marks on your images, so you never come back to a media library that needs marking from scratch; a setting removes them on uninstall if you want a clean slate.
Why this exists
The EU AI Act (Article 50) has applied since 2 August 2026. Among other things, anyone who publishes AI-generated or AI-manipulated images of real people, objects, places or events in a way that could pass for authentic has to disclose it visibly. This plugin does not decide which of your images need that – you do. It makes publishing the disclosure a single checkbox instead of a manual caption you will forget on the fifth post.
Two kinds of disclosure
A fully synthetic image and a real photograph an AI has altered both need disclosing, but they are not the same claim, and a reader can tell the difference. So each gets its own label text, which you control.
What it does
A Generated by AI / Modified using AI picker in the Media Library and in the media modal.
A control directly under the featured image in the block editor, naming the file it marks, saved instantly.
An AI column in the media library list view, so you can see what is marked.
Full caption under the image on single posts and pages; a compact badge on thumbnails, in listings and archives, so the disclosure is there at first exposure, not only after a click. The label sits directly under the image, above any caption the theme adds.
Label text and badge text per kind, position (under the image or in any of its four corners), style (plain text, dark, white or translucent), size, opacity and where to show it – all configurable.
No build step, no external requests, no tracking, no database tables.
Where it reaches automatically
Featured images (post_thumbnail_html).
Images rendered with wp_get_attachment_image() – most themes, most custom loops.
Core image, gallery and media-and-text blocks.
Images in post content, including content written in the classic editor or printed by a shortcode.
Optionally, every other image on the page – see below.
Images the theme prints itself (ACF, sliders, page builders)
A template that prints straight from an ACF field passes through no WordPress filter at all, so there is nothing to hook. Switch on Images the theme prints itself in the settings and the finished page is scanned instead.
It is not a general image parser: the plugin already knows which attachments you marked – usually a handful – so it builds a file-name list for those files only (original plus every registered size) and looks for exactly those names. No database query per image, and because the match is on the file name, a CDN or an offloaded upload path still matches.
If you would rather not have the page scanned, put the label in the template yourself:
or in content: [aidl_disclosure id="123"]
Filters
aidl_label_text – ( $text, $attachment_id, $variant, $mode )
aidl_badge_text – ( $text, $attachment_id, $mode )
Languages
Written in English. Translations, Polish included, are delivered by WordPress.org from translate.wordpress.org – help translate it there.
