WP Manifestindependent plugin directory
manifest / ai / wordpress-ai

Travelopia WordPress AI WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA

An extensible WordPress plugin that brings AI capabilities to your content workflows.

★ 3stars
254composer installs
0.2.0latest · 4mo ago

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/travelopia/wordpress-ai/archive/refs/heads/main.zip

On Packagist as travelopia/wordpress-ai:

composer require travelopia/wordpress-ai
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

An extensible WordPress plugin that brings AI capabilities to your content workflows. Configure your preferred AI provider once, and unlock a growing set of features — starting with automatic image alt text generation.

Built by the super talented team at Travelopia.

Installation

composer require travelopia/wordpress-ai

AI Providers

The plugin supports multiple providers out of the box:

  • AWS Bedrock (default)
  • OpenAI

Provider Configuration

AWS Bedrock (Claude 3.5 Sonnet) — set via wp-config.php or environment variable:

define( 'AWS_BEDROCK_API_KEY', 'your-key-here' );
define( 'AWS_BEDROCK_REGION', 'us-east-1' ); // optional, defaults to us-east-1
export AWS_BEDROCK_API_KEY="your-key-here"
export AWS_BEDROCK_REGION="us-east-1" # optional, defaults to us-east-1

OpenAI (GPT-4o Mini) — set via wp-config.php or environment variable:

define( 'OPENAI_API_KEY', 'your-key-here' );
export OPENAI_API_KEY="your-key-here"

Features

Alt Text Generation

Automatically generates descriptive alt text for images — improving accessibility and SEO with zero manual effort.

  • Auto-generate on upload — alt text is filled in the moment an image hits the Media Library
  • Generate for existing images — click "Generate Alt Text" from the attachment edit screen
  • Batch processing via WP-CLI — backfill alt text for your entire media library
  • Respects manual alt text — never overwrites unless you explicitly regenerate
  • Customizable prompt — tailor the generation instructions from the settings page

WP-CLI examples:

wp travelopia-wp-ai alt-text generate --missing                    # only images without alt text
wp travelopia-wp-ai alt-text generate --all                        # every image
wp travelopia-wp-ai alt-text generate --ids=1,2,3                  # specific attachments
wp travelopia-wp-ai alt-text generate --all --batch-size=20        # smaller batches for memory-constrained envs
wp travelopia-wp-ai alt-text generate --missing --limit=1000       # cost / quality sample — stop after 1000 attempts
wp travelopia-wp-ai alt-text generate --missing --limit=5000       # chunked nightly backfill — re-runs continue naturally

The --limit=<number> flag caps the total number of attempts in a single run (success or failure). It composes with --missing, --all, --ids, and --batch-size. With --ids, the supplied list is truncated to the first N entries. With --all, the run is not resumable — successive invocations reprocess the same first N images; use --missing for chunked backfills.

Hooks

Filters

travelopia_wordpress_ai_provider — Switch the active AI provider.

add_filter(
    'travelopia_wordpress_ai_provider',
    fn() => 'openai'
);

travelopia_wordpress_ai_alt_text_generation_options — Override model, temperature, or system instruction for alt text generation.

add_filter(
    'travelopia_wordpress_ai_alt_text_generation_options',
    function ( array $options, int $attachment_id ): array {
        $options['model']              = 'anthropic.claude-3-5-sonnet-20241022-v2:0';
        $options['temperature']        = 0.5;
        $options['system_instruction'] = 'You are an accessibility expert.';
        return $options;
    },
    10,
    2
);

travelopia_wordpress_ai_alt_text_include_context — By default, the plugin sends the image title and filename as additional context alongside the image to help the AI produce more accurate alt text. Set this to false to send only the image itself.

add_filter(
    'travelopia_wordpress_ai_alt_text_include_context',
    '__return_false'
);

travelopia_wordpress_ai_settings_capability — Control which user role can access the plugin settings page. Defaults to manage_options (Administrator).

add_filter(
    'travelopia_wordpress_ai_settings_capability',
    fn() => 'edit_posts'
);

Actions

travelopia_wordpress_ai_alt_text_generated — Fired after alt text is successfully generated for an attachment.

add_action(
    'travelopia_wordpress_ai_alt_text_generated',
    function ( int $attachment_id, string $alt_text ): void {
        // Log, notify, or post-process.
    },
    10,
    2
);

travelopia_wordpress_ai_bedrock_error / travelopia_wordpress_ai_open_ai_error — Fired when a provider encounters an error during generation.

add_action(
    'travelopia_wordpress_ai_bedrock_error',
    function ( string $code, string $message, array $data ): void {
        // Handle error.
    },
    10,
    3
);

Local Development

Requires Docker to be installed and running.

npm run start            # install deps and start the dev environment
npm run wp-env:start     # start the dev environment (without installing deps)
npm run wp-env:stop      # stop the dev environment
npm run test:php:setup   # install deps in container and run PHP tests (first run)
npm run test:php         # run PHP tests

Privacy

Images are sent to your configured AI provider for analysis when generating alt text.

Releases

4 releases.

Tag
Published
0.2.0 latest
Jun 17, 2026 4mo ago
May 26, 2026 4mo ago
Apr 19, 2026 6mo ago
Mar 24, 2026 7mo ago

These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.

A grade

Security

Travelopia WordPress AI 0.2.0 · audited by WP Registry

No security issues found.

Audited release
0.2.0
Findings
none
Worst severity
—
Content hash
fef30d4f6172e86cc8b6583b…

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.