Aiviso – AI Image Disclosure

Description

AI-generated imagery is becoming common on news sites, magazines, blogs, company websites, educational projects, product content, and public-interest publications. Publishers increasingly need a clear editorial process for telling readers when an image was generated or substantially created with artificial intelligence.

Aiviso provides a simple AI image disclosure workflow for WordPress. An editor manually marks an image in the Media Library, and Aiviso stores that declaration on the WordPress attachment. Aiviso does not attempt to detect AI-generated images.

The same declaration can be used wherever the attachment appears as a Featured Image. When the optional content-image setting is enabled, each qualifying AI-marked Media Library image inside the main content of an individual post or public custom post type can also receive its own disclosure badge.

Content-image disclosure is limited to individual post and custom post type content. It does not process images inside WordPress Pages, archives, listings, category views, or search results.

The original image file remains untouched. Aiviso renders a separate HTML/CSS overlay, does not upload images to an AI service, and does not require an external AI provider.

What Aiviso does

An editor or administrator opens an image in the Media Library and checks AI-generated image. Aiviso stores that decision as WordPress attachment metadata.

Aiviso can then display the configured badge in two distinct contexts:

  • Featured Images rendered through standard WordPress Featured Image APIs.
  • AI-marked Media Library images inside the main content of individual posts and public custom post types, when the optional content-image setting is enabled.

Featured Image badges have their own display scope. Single pages only limits them to individual posts, Pages, and supported custom post types. Everywhere allows qualifying Featured Image badges wherever those Featured Images are rendered, including archive and listing views.

Content-image disclosure does not use that display scope. It remains limited to the main content of individual posts and public custom post types and excludes WordPress Pages and archive, listing, category, and search views.

The badge is not burned into JPEG, PNG, WebP, or any other media file. Aiviso does not modify original files, regenerate media, or embed metadata into the physical image. The disclosure can be changed, disabled, or removed without altering the source media.

Available controls include:

  • Enable or disable badges on AI-marked Featured Images
  • Optionally enable badges on AI-marked images inside post content
  • Featured Image display scope: Single pages only or Everywhere
  • Configurable Badge text, position, and size
  • Manual multilingual Badge text where a supported multilingual plugin supplies multiple site languages
  • Built-in Aiviso logo or a custom raster logo from the Media Library
  • Live Badge preview
  • Optional removal of attachment declarations when the plugin is deleted

Editors also see the declared AI status while working with Featured Images in the Block Editor and Classic Editor.

Why disclose AI-generated images?

Disclosure is a practical part of responsible AI publishing. It can help readers distinguish documentary photography from synthetic imagery, reduce ambiguity about image origin, and give editorial teams a consistent workflow for recording decisions that have already been made.

There is no single rule that makes every AI-generated image in every context subject to the same visible label. Still, readers, platforms, regulators, standards bodies, and publishers are giving more attention to synthetic media, deepfakes, provenance, and consumer transparency. Aiviso can help publishers implement clearer AI-content disclosure practices without requiring a site to redesign its entire editorial process.

EU AI Act and AI transparency

Regulation (EU) 2024/1689, commonly called the EU AI Act, contains transparency obligations for certain AI systems and AI-generated or manipulated content in Article 50. The scope, exceptions, application dates, and responsibilities depend on the AI system, the organization’s role, and the use case.

The European Commission has published Article 50 transparency guidelines and a Code of Practice on Transparency of AI-generated Content. The legislation is available on EUR-Lex.

Aiviso can support a publisher’s AI transparency practices by recording editor-declared AI imagery and showing a visible WordPress disclosure. It is not a general Article 50 implementation. In particular, Aiviso does not determine whether Article 50 applies to an organization or image, verify provenance, detect AI imagery, create C2PA credentials, add cryptographic provenance, or automatically satisfy provider-side machine-readable marking requirements.

Aiviso does not guarantee compliance with the EU AI Act or any other law. Administrators and editors remain responsible for deciding which images should be declared, which obligations apply, what wording is appropriate, and whether other technical or legal measures are required.

AI transparency beyond the European Union

AI-content transparency is not limited to the European Union. Governments, regulators, platforms, publishers, standards bodies, and technology companies in many jurisdictions are developing rules and practices around synthetic media, deepfakes, provenance, disclosure, and consumer transparency.

For a global WordPress site, an explicit editorial disclosure process can be useful even when a particular image is not subject to a specific statutory labelling requirement. Aiviso is a practical publishing tool, not a legal decision engine.

Disclosure, not AI detection

Aiviso deliberately does not attempt to decide whether an image was generated by AI. AI-image detection can be probabilistic and uncertain. Instead, Aiviso uses an editorial declaration workflow: an authorized editor or administrator decides that an attachment should be marked, and Aiviso records that decision.

This keeps the behavior predictable. Aiviso records and presents the editorial declaration you make rather than silently classifying images.

Multilingual Badge text

When WPML, Polylang, or TranslatePress is active and reports multiple configured site languages, Aiviso shows a separate Badge text field for each language in Settings > Aiviso. This is manual editorial translation, not machine translation.

For example, an editor may enter different text for English, Serbian, and German. These are administrator-defined values, not automatically generated translations. If a configured language field is deliberately saved empty, Aiviso uses logo-only disclosure for that language rather than silently falling back to another language’s text.

Features

  • Attachment-level AI-generated image declaration
  • Media Library integration
  • Featured Image disclosure through standard WordPress Featured Image output
  • Optional disclosure for each AI-marked Media Library image inside individual post and public custom post type content
  • Content-image support for standard Classic Editor and Gutenberg image markup
  • Block Editor and Classic Editor Featured Image status support
  • Public custom post type support
  • Built-in Aiviso logo and custom raster logo support
  • Configurable Badge text, position, and size
  • Independent Featured Image display scope for singular content or every qualifying Featured Image context
  • Live settings preview
  • Manual multilingual Badge text fields for WPML, Polylang, and TranslatePress
  • REST-aware attachment declaration state for editor integration
  • No original image-file modification
  • Local, privacy-focused operation
  • Developer helper and filters

Themes using WordPress standard Featured Image APIs receive the intended Featured Image integration. Content-image disclosure processes standard WordPress attachment images passed through the main content filter. Highly customized theme or builder output that bypasses those paths may need theme-level integration.

How it works

  1. Upload or open an image in the Media Library.
  2. Check AI-generated image.
  3. Use that attachment as a Featured Image, or insert it into post content.
  4. Configure Aiviso in Settings > Aiviso.
  5. Aiviso shows the configured disclosure badge in the enabled, supported contexts.

The declaration is stored on the attachment, so the same image does not need to be declared again for each use.

Who is Aiviso for?

Aiviso is useful for publishers, news and magazine websites, bloggers, editorial teams, agencies, businesses publishing AI-assisted visual content, educational organizations, public-interest websites, and organizations building internal AI transparency practices. It is globally usable and is not limited to EU websites.

Settings

Open Settings > Aiviso to configure the plugin.

  • Display AI badge on featured images enables or disables Featured Image badges without deleting attachment declarations.
  • Display AI badge on images inside post content optionally enables badges for AI-marked Media Library images inside the main content of individual posts and public custom post types. It does not apply to WordPress Pages or archive, listing, category, and search views.
  • Badge display controls Featured Images only. Single pages only limits Featured Image badges to individual posts, Pages, and supported custom post types. Everywhere also permits qualifying Featured Image badges on archive and listing views.
  • AI-generated badge text and AI-modified badge text control the visible disclosure text for each image type. With a supported multilingual plugin, separate fields are shown for configured site languages.
  • Badge position and Badge size control placement and scale for the shared badge design.
  • Built-in Aiviso logo uses the included mark. Custom logo lets you choose a supported raster image from the Media Library.
  • Badge preview shows the selected visual treatment while editing settings.
  • Advanced contains Remove data when plugin is deleted.

Leaving either Badge text field empty displays the logo only for that image type. Changing the text or logo never changes the original media file.

Privacy

Aiviso stores editor declarations and settings locally in WordPress. It does not upload images to an AI service, perform AI detection, use telemetry or analytics, automatically send image data to third parties, modify original image files, load remote fonts, or require an Aiviso cloud account.

When an administrator opens Settings > Aiviso, the recommendations card may retrieve public plugin-directory metadata from WordPress.org. Normalized results are cached for 12 hours. Plugin icons may load from trusted WordPress.org domains when available. These requests do not include site images, post content, visitor data, analytics, or telemetry.

The settings screen contains a plain, user-initiated link to Ko-fi for supporting development. Aiviso does not load Ko-fi JavaScript, images, tracking, or other Ko-fi resources automatically. Ko-fi is contacted only if a user chooses to follow that external link.

Developer hooks

aiviso_is_ai_generated() is a public helper function that returns whether an attachment is declared AI-generated.

The aiviso_is_ai_generated filter adjusts the resolved attachment declaration. aiviso_should_display_badge controls whether a qualifying Featured Image receives a badge. aiviso_badge_text, aiviso_badge_position, aiviso_badge_logo, aiviso_badge_classes, and aiviso_badge_markup adjust shared badge output, including supported Featured Image and content-image badges.

aiviso_multilingual_provider optionally lets developers replace the active normalized multilingual provider. These APIs are intended for controlled integrations; the plugin's existing options, metadata keys, and attachment workflow remain the primary public behavior.

Version 1.0.1 does not add a separate public filter for selecting content images.

Legal notice

Aiviso is a technical publishing and disclosure tool. It does not provide legal advice, make legal determinations, or guarantee compliance with the EU AI Act or any other law. Laws, regulatory guidance, and platform requirements can change. You are responsible for determining which disclosure, labelling, provenance, accessibility, consumer-protection, or other requirements apply to your content and organization.

Screenshots

Installation

Install from a ZIP file

  1. In your WordPress admin area, go to Plugins > Add New Plugin.
  2. Select Upload Plugin and choose the Aiviso ZIP file.
  3. Install and activate Aiviso.
  4. Open an image in Media Library and check AI-generated image.
  5. Configure Featured Image and optional post-content badges in Settings > Aiviso.

Install manually

  1. Upload the aiviso-ai-image-disclosure folder to /wp-content/plugins/ using FTP or your hosting file manager.
  2. Activate Aiviso from the Plugins screen.
  3. Configure the badge in Settings > Aiviso.

FAQ

Does Aiviso automatically detect AI-generated images?

No. An editor or administrator declares the image, and Aiviso records that declaration.

Does Aiviso verify that an image was generated by AI?

No. It does not verify provenance, inspect image files, or make authenticity decisions.

Does Aiviso modify my image files?

No. It stores WordPress attachment metadata and renders a separate HTML/CSS overlay. Original media files remain unchanged.

Can Aiviso mark images inside articles?

Yes. In version 1.0.1, you can optionally display badges on AI-marked Media Library images inside the main content of individual posts and public custom post types. Each qualifying image can receive its own badge.

Does content-image disclosure work on WordPress Pages?

No. Content-image disclosure does not process Pages. Featured Image behavior on Pages is controlled separately by the Featured Image settings.

Can Featured Image badges appear on archive and listing pages?

Yes. Set the Featured Image Badge display option to Everywhere. This does not enable content-image processing on archive or listing views.

Does Aiviso guarantee EU AI Act compliance?

No. Aiviso is a technical disclosure tool, not legal advice or a compliance guarantee. It does not determine whether Article 50 or another rule applies to your organization or content.

Why use Aiviso if it does not detect AI images?

It provides a predictable editorial workflow. Authorized people decide when an attachment should be disclosed, and that declaration follows the attachment in supported Featured Image and post-content uses.

Do I need to mark the same image on every post?

No. The declaration is stored on the WordPress attachment, so it can be reused across posts.

Can I use my own AI disclosure logo?

Yes. Choose a supported raster image from the WordPress Media Library in Settings > Aiviso. Custom SVG logos are not accepted.

Can I change the disclosure text?

Yes. Use the Badge text setting.

Can the badge be translated?

Yes. When WPML, Polylang, or TranslatePress is active with multiple configured languages, Aiviso provides separate manual Badge text fields for those languages.

What happens if I leave Badge text empty?

The badge displays the selected logo without visible text. This also works per language when multilingual Badge text is configured.

Does Aiviso work with custom post types?

Yes. Featured Image badges support public post types that use the standard WordPress Featured Image feature. Optional content-image badges support the main content of public custom post types shown as individual entries.

Does it work with Gutenberg / Block Editor?

Yes. Aiviso provides Featured Image AI-status feedback in the Block Editor and supports standard Gutenberg Image block output in individual post content when content-image disclosure is enabled.

Does it work with Classic Editor?

Yes. The Classic Editor retains the Featured Image status interface, and standard Media Library images inserted into individual post content can receive badges when content-image disclosure is enabled.

Will it work with every WordPress theme?

Automatic Featured Image output relies on the theme using WordPress standard Featured Image APIs. Content-image output relies on the theme passing the queried post’s main content through the standard WordPress content filter. Highly customized output can bypass these integrations.

Does Aiviso send my images anywhere?

No. Aiviso does not automatically upload or send images to an external service.

Does Aiviso use an AI API?

No. It does not use OpenAI, another AI provider, or external image analysis.

What happens when I deactivate Aiviso?

Settings and attachment declarations remain in WordPress. Frontend badges are no longer rendered while the plugin is inactive.

What happens when I delete Aiviso?

The Aiviso settings option is removed. Attachment declarations remain by default. Enable Remove data when plugin is deleted before uninstalling if you also want Aiviso’s attachment declarations removed.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Aiviso – AI Image Disclosure” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.2

  • Added AI-modified image declarations alongside the existing AI-generated image declaration, with separately configurable badge text and shared appearance controls.

1.0.1

  • Added optional disclosure badges for AI-marked Media Library images inside individual post and public custom post type content.
  • Kept content-image disclosure limited to individual content views, excluding WordPress Pages and archive, listing, category, and search views.
  • Preserved independent Featured Image display controls, including the Everywhere scope for archive and listing contexts.
  • Improved frontend compatibility for standard Classic Editor and Gutenberg content images, including linked and captioned images.
  • Added the Serbian (Serbia) Cyrillic translation.
  • Refined the horizontal alignment of the built-in Aiviso mark.
  • Added a cached Settings-page list of selected free plugins from the WordPress.org Plugin Directory.

1.0.0

  • Initial release.