Title: OG Pilot Dynamic Open Graph Images
Author: raulonrails
Published: <strong>2026 年 3 月 16 日</strong>
Last modified: 2026 年 8 月 20 日

---

搜索插件

![](https://ps.w.org/og-pilot-dynamic-open-graph-images/assets/banner-772x250.png?
rev=3481052)

![](https://ps.w.org/og-pilot-dynamic-open-graph-images/assets/icon-256x256.gif?
rev=3481052)

# OG Pilot Dynamic Open Graph Images

 作者：[raulonrails](https://profiles.wordpress.org/raulonrails/)

[下载](https://downloads.wordpress.org/plugin/og-pilot-dynamic-open-graph-images.0.1.1.zip)

 * [详情](https://cn.wordpress.org/plugins/og-pilot-dynamic-open-graph-images/#description)
 * [评价](https://cn.wordpress.org/plugins/og-pilot-dynamic-open-graph-images/#reviews)
 *  [安装](https://cn.wordpress.org/plugins/og-pilot-dynamic-open-graph-images/#installation)
 * [开发进展](https://cn.wordpress.org/plugins/og-pilot-dynamic-open-graph-images/#developers)

 [支持](https://wordpress.org/support/plugin/og-pilot-dynamic-open-graph-images/)

## 描述

OG Pilot Dynamic Open Graph Images helps you create branded social preview images
for every URL on your site. Connect via OAuth, choose a template, and automatically
generate Open Graph images for blog posts, landing pages, and WooCommerce products.
Override per post when needed, output complete Open Graph + X/Twitter meta tags,
and keep existing images live even when generation is paused.

Core capabilities:
 * 3-step setup wizard for faster onboarding after activation.*
OAuth connection flow (PKCE) for secure account linking. * Site-wide defaults for
template, title, description, logo URL, image URL, and colors. * Per-post/page/product
overrides with dynamic placeholder support. * Rule-based template selection (post/
page/product + taxonomy rules). * Outputs comprehensive Open Graph and X/Twitter
meta tags, including article-specific and WooCommerce product-specific fields. *
Meta ownership mode to avoid duplicate tags with SEO plugins. * Live social preview
UI in wp-admin (Facebook, LinkedIn, X/Twitter). * Per-entry generated image preview
in the editor sidebar. * Supports publicly available OG Pilot templates for WordPress:`
page`, `blog_post`, `podcast`, `portfolio`, `book`, `event`, `product`, `company`,
and `github`. * Optional auto-generation on content save. * Non-blocking background
generation with processing fallback image + retry scheduling. * Optional cache busting
toggle to force a daily image refresh cycle. * Bulk regenerate queue with in-admin
progress updates. * One-click import of existing social fields from Yoast, Rank 
Math, and AIOSEO. * Diagnostics panel with endpoint health, token status, and latest
API errors. * Role-aware UX: admins manage plugin settings; editors can override
per-entry templates. * WooCommerce-aware placeholders (`{{product_price}}`, `{{product_short_description}}`,
etc.). * Graceful subscription handling: when trial/subscription is inactive, new
image generation is paused while existing OG images keep working.

Supported placeholders:
 * `{{post_title}}` * `{{excerpt}}` * `{{site_name}}` * `{{
post_url}}` * `{{author_name}}` * `{{author_avatar_url}}` * `{{publish_date_iso}}`*`{{
featured_image_url}}` * `{{product_price}}` * `{{product_short_description}}` * `{{
episode_date}}` * `{{event_date}}` * `{{event_location}}` * `{{book_author}}` * `{{
book_series_number}}` * `{{book_genre}}` * `{{company_logo_url}}` * `{{github_contributions}}`

Service details:
 * This plugin is a SaaS integration. OG image generation is provided
by OG Pilot. * Terms of Service: https://ogpilot.com/terms * Privacy Policy: https://
ogpilot.com/privacy

No usage tracking is performed by this plugin beyond required OAuth and image-generation
API calls.

### External services

#### OG Pilot API

This plugin connects to the OG Pilot API (https://ogpilot.com) to generate dynamic
Open Graph images for your content.

**What data is sent:**
 * OAuth authorization data (account email, site URL) during
the initial connection flow. * Image generation payloads containing template name
and the fields you configured (e.g., post title, excerpt, author name, logo URL,
colors) each time an image is generated or regenerated. * Token refresh requests
to maintain the OAuth connection.

**When data is sent:**
 * When you connect your site to OG Pilot via OAuth. * When
a post/page/product is saved with auto-generate enabled. * When you manually trigger
image generation or force refresh. * When bulk regeneration is run. * When the plugin
checks subscription status.

This service is provided by OG Pilot: [Terms of Service](https://ogpilot.com/terms)
| [Privacy Policy](https://ogpilot.com/privacy).

#### Bunny Fonts

This plugin loads web fonts from Bunny Fonts (https://fonts.bunny.net) for the admin
preview UI in the WordPress dashboard.

**What data is sent:**
 * Standard HTTP request data (IP address, user agent) is
sent to the Bunny Fonts CDN when the admin settings/preview page is loaded.

**When data is sent:**
 * When an admin user views the OG Pilot settings page or
post editor metabox that includes the social image preview.

No personal content or site data is transmitted to Bunny Fonts. Only standard browser
request headers are sent to load font files.

This service is provided by BunnyWay d.o.o.: [Terms of Service](https://bunny.net/tos)
| [Privacy Policy](https://bunny.net/privacy).

### Dynamic OG Image Examples

The examples below mirror the payload style used in `og-pilot-plugins/og_pilot_ruby/
README.md`, adapted to fields you set in this plugin.

#### Page

    ```
    {
      "template": "page",
      "title": "Acme Robotics Product Updates",
      "description": "See what shipped this week across the web app.",
      "logo_url": "https://www.google.com/s2/favicons?sz=128&domain_url=https%3A%2F%2Fwww.notion.so",
      "image_url": "https://images.unsplash.com/photo-1558655146-d09347e92766?w=1400&q=80",
      "bg_color": "#0B1220",
      "text_color": "#F8FAFC"
    }
    ```

#### Blog Post

    ```
    {
      "template": "blog_post",
      "title": "How Stripe Reduced Checkout Abandonment by 18%",
      "logo_url": "https://www.google.com/s2/favicons?sz=128&domain_url=https%3A%2F%2Fstripe.com",
      "image_url": "https://images.unsplash.com/photo-1460925895917-afdab827c52f?w=1400&q=80",
      "author_name": "Maya Patel",
      "author_avatar_url": "https://api.dicebear.com/7.x/avataaars/svg?seed=MayaPatel",
      "publish_date": "2026-02-24",
      "bg_color": "#0F172A",
      "text_color": "#F8FAFC"
    }
    ```

#### Podcast

    ```
    {
      "template": "podcast",
      "title": "Indie Hackers Podcast: Pricing Experiments That Worked",
      "logo_url": "https://www.google.com/s2/favicons?sz=128&domain_url=https%3A%2F%2Fwww.spotify.com",
      "image_url": "https://images.unsplash.com/photo-1478737270239-2f02b77fc618?w=1400&q=80",
      "episode_date": "2026-02-21",
      "bg_color": "#18181B",
      "text_color": "#FAFAFA"
    }
    ```

#### Product (WooCommerce-friendly)

    ```
    {
      "template": "product",
      "title": "Allbirds Tree Dasher 3",
      "logo_url": "https://www.google.com/s2/favicons?sz=128&domain_url=https%3A%2F%2Fwww.allbirds.com",
      "image_url": "https://images.unsplash.com/photo-1542291026-7eec264c27ff?w=1400&q=80",
      "unique_selling_point": "Free shipping + 30-day returns",
      "bg_color": "#F8FAFC",
      "text_color": "#0F172A"
    }
    ```

#### Event

    ```
    {
      "template": "event",
      "title": "Launch Week Berlin 2026",
      "logo_url": "https://www.google.com/s2/favicons?sz=128&domain_url=https%3A%2F%2Fwww.eventbrite.com",
      "image_url": "https://images.unsplash.com/photo-1540575467063-178a50c2df87?w=1400&q=80",
      "event_date": "2026-06-12/2026-06-14",
      "event_location": "Station Berlin",
      "bg_color": "#1E1B4B",
      "text_color": "#F5F3FF"
    }
    ```

#### Book

    ```
    {
      "template": "book",
      "title": "Designing APIs for Humans",
      "description": "A practical handbook for product-minded engineers.",
      "logo_url": "https://www.google.com/s2/favicons?sz=128&domain_url=https%3A%2F%2Fwww.oreilly.com",
      "image_url": "https://images.unsplash.com/photo-1512820790803-83ca734da794?w=1400&q=80",
      "book_author": "Alex Turner",
      "book_series_number": "2",
      "book_genre": "Technology",
      "bg_color": "#172554",
      "text_color": "#EFF6FF"
    }
    ```

#### Portfolio

    ```
    {
      "template": "portfolio",
      "title": "Maya Chen • Product Designer",
      "description": "Fintech UX, design systems, and prototyping.",
      "logo_url": "https://api.dicebear.com/7.x/avataaars/svg?seed=MayaChen&size=64",
      "image_url": "https://images.unsplash.com/photo-1557672172-298e090bd0f1?w=1400&q=80",
      "bg_color": "#1F2937",
      "text_color": "#F9FAFB"
    }
    ```

#### Company

    ```
    {
      "template": "company",
      "title": "Notion",
      "description": "4 job openings",
      "logo_url": "https://www.google.com/s2/favicons?sz=128&domain_url=https%3A%2F%2Fwww.notion.so",
      "company_logo_url": "https://www.google.com/s2/favicons?sz=256&domain_url=https%3A%2F%2Flinear.app",
      "bg_color": "#111827",
      "text_color": "#F9FAFB"
    }
    ```

#### GitHub Activity

    ```
    {
      "template": "github",
      "title": "rails/rails",
      "description": "Recent merged PRs, reviews, and commit activity.",
      "github_accent_color": "#22C55E",
      "bg_color": "#0B1220",
      "text_color": "#E5E7EB",
      "github_contributions": "[{\"date\":\"2026-02-16\",\"count\":7},{\"date\":\"2026-02-20\",\"count\":12},{\"date\":\"2026-02-24\",\"count\":9}]"
    }
    ```

For templates that support custom images, you can run both styles:
 * With custom
image: set `image_url`. * Without custom image: leave `image_url` empty.

## 安装

 1. Upload the plugin folder to `/wp-content/plugins/` or install from the Plugins 
    screen.
 2. Activate **OG Pilot Dynamic Open Graph Images**.
 3. Go to **Settings  OG Pilot Open Graph Images**.
 4. Run the **Setup Wizard** (recommended). After activation, admins are redirected
    there automatically.
 5. Configure template defaults, placeholder patterns, and optional template rules.
 6. Save settings and optionally enable auto-generate on save.

## 常见问题

### Do I need an OG Pilot account?

You need an OG Pilot account for service usage, but you do not need to pre-register
before installing the plugin.
 When you click **Connect with OG Pilot**, OAuth can
automatically create/link your OG Pilot account using your site details. The connect
form pre-fills your current admin email, and you can edit it before starting OAuth.

### Which post types are supported?

By default: `post` and `page`. If WooCommerce is active, `product` is also available.

### Can I set site-wide defaults and then override per entry?

Yes. Set defaults in plugin settings, then use the **OG Pilot Social Image** meta
box on each post/page/product for per-content overrides.

### Is there a guided onboarding flow?

Yes. A 3-step setup wizard helps you connect OAuth, choose a default template, and
select supported content types.

### Which templates are available in the plugin?

page, `blog_post`, `podcast`, `portfolio`, `book`, `event`, `product`, `company`,
and `github`.

### Can I assign templates automatically by post type or taxonomy?

Yes. You can define rule-based template defaults for post/page/product and optional
mappings for category/tag/product_type slugs.

### How does image generation get triggered?

Two ways:
 * Auto-generation on save (if enabled and subscription is active). * 
Background generation queue when the stored OG image is missing/outdated.

### Will page loads block while OG Pilot generates images?

No. The plugin queues generation in the background and returns a temporary processing
image until the final image is ready.

### How long does generation take?

Most images are ready within 5-10 minutes, depending on queue load and site traffic
that triggers WP-Cron.

### Can I regenerate all images after changing defaults?

Yes. Use **Bulk Regenerate Queue** in settings to regenerate all supported content
with progress feedback.

### Can I import existing SEO/Open Graph fields?

Yes. Use **Import Existing Social Fields** to pull title/description/image values
from Yoast, Rank Math, and AIOSEO into OG Pilot overrides.

### What does the cache busting setting do?

When enabled, OG Pilot adds a daily (UTC) cache-busting token to generation payloads.
This can refresh social cards once per day even if content fields did not change.

### What happens after trial/subscription ends?

The plugin stays active. New OG generation pauses until subscription is active again.
Existing generated OG image URLs continue to work.

### Does this plugin deactivate itself if payment fails?

No. It follows a graceful degraded mode: only new generation actions are blocked.

### What happens to force refresh and bulk regenerate when subscription is inactive?

Those generation actions are disabled/blocked until subscription becomes active 
again, while existing generated image URLs continue to work.

### How can I avoid duplicate social tags with another SEO plugin?

Set **Meta Ownership** to External SEO plugin. OG Pilot will stop outputting social
meta tags and let your SEO plugin own that output.

### Is there a diagnostics screen for troubleshooting?

Yes. The Diagnostics panel shows endpoint health, token expiry data, latest generation
timestamp, and most recent API error message.

### Do I need manual DNS/domain verification for WordPress OAuth installs?

No manual DNS step is required in the WordPress OAuth flow.

### What data is sent to OG Pilot?

Only data needed for OAuth/token lifecycle and image generation payloads (template
+ fields you configured).

### Does it support WooCommerce metadata out of the box?

Yes. You can use placeholders such as `{{product_price}}` and `{{product_short_description}}`.

### Can I create and upload fully custom template definitions from this plugin?

Not currently. The plugin uses OG Pilot’s publicly supported template set.

### Which social platforms are covered?

The plugin outputs `og:image` and `twitter:image` tags, so previews work across 
platforms that consume those tags (including Facebook, LinkedIn, and X/Twitter).

### How do I force an updated image after changing content?

Update any OG-related field (global defaults or per-post override) and save the 
content. The plugin queues regeneration based on payload changes.

### Is there an activation redirect, and does it work with WP-CLI?

Yes. Web activations redirect admins to the setup wizard once. WP-CLI activations
skip redirects.

## 评价

此插件暂无评价。

## 贡献者及开发者

「OG Pilot Dynamic Open Graph Images」是开源软件。 以下人员对此插件做出了贡献。

贡献者

 *   [ raulonrails ](https://profiles.wordpress.org/raulonrails/)

[帮助将「OG Pilot Dynamic Open Graph Images」翻译成简体中文。](https://translate.wordpress.org/projects/wp-plugins/og-pilot-dynamic-open-graph-images)

### 对开发感兴趣吗?

您可以[浏览代码](https://plugins.trac.wordpress.org/browser/og-pilot-dynamic-open-graph-images/)，
查看[SVN仓库](https://plugins.svn.wordpress.org/og-pilot-dynamic-open-graph-images/)，
或通过[RSS](https://plugins.trac.wordpress.org/log/og-pilot-dynamic-open-graph-images/?limit=100&mode=stop_on_copy&format=rss)
订阅[开发日志](https://plugins.trac.wordpress.org/log/og-pilot-dynamic-open-graph-images/)。

## 更新日志

#### 0.1.1

 * Confirmed compatibility with WordPress 7.0 and 7.1 (Modern admin theme and iframed
   post editor).
 * Updated Tested up to to 7.1.

#### 0.1.0

 * Improved plugin naming for marketplace search clarity.
 * Added post-activation redirect to setup wizard (with WP-CLI-safe behavior).
 * Added editable account email field before OAuth connect (prefilled from current
   admin).
 * Switched front-end lazy generation to non-blocking background queue via WP-Cron.
 * Added per-entry processing status and expectation messaging (5-10 minutes).
 * Added real generated-image preview block in post/page/product editor sidebar.
 * Force refresh now queues background regeneration instead of blocking editor requests.
 * Added `og:image:url`, `twitter:image:src`, and `twitter:domain` tags.
 * Updated release packaging to produce a WP.org-safe zip root slug: `og-pilot-dynamic-
   open-graph-images`.
 * Added setup wizard (connect OAuth, choose template, select content types).
 * Added side-by-side settings layout with sticky live social preview.
 * Added template gallery cards and template-specific field visibility.
 * Added rule-based template defaults for post type + taxonomy maps.
 * Added meta ownership mode and granular meta output toggles.
 * Added import tool for Yoast/Rank Math/AIOSEO social metadata.
 * Added diagnostics panel (healthcheck, token status, API error visibility).
 * Added bulk regenerate queue with AJAX progress.
 * Added per-entry status chips, force-refresh notices, and clearer editor feedback.
 * Added safer subscription gating: generation actions are blocked when inactive,
   existing images remain available.
 * Added plugin list shortcuts: Settings + Setup Wizard.
 * Added role-aware permissions for overrides (admin + editor capabilities).

## 额外信息

 *  版本 **0.1.1**
 *  最后更新：**2 月前**
 *  活跃安装数量 **不到10**
 *  WordPress 版本 ** 6.5 或更高版本 **
 *  已测试的最高版本为 **7.1.3**
 *  PHP 版本 ** 8.0 或更高版本 **
 *  语言
 * [English (US)](https://wordpress.org/plugins/og-pilot-dynamic-open-graph-images/)
 * 标签
 * [Open Graph Images](https://cn.wordpress.org/plugins/tags/open-graph-images/)
   [seo](https://cn.wordpress.org/plugins/tags/seo/)[twitter cards](https://cn.wordpress.org/plugins/tags/twitter-cards/)
   [woocommerce](https://cn.wordpress.org/plugins/tags/woocommerce/)
 *  [高级视图](https://cn.wordpress.org/plugins/og-pilot-dynamic-open-graph-images/advanced/)

## 评级

尚未提交反馈。

[您的评价](https://wordpress.org/support/plugin/og-pilot-dynamic-open-graph-images/reviews/#new-post)

[查看全部评论](https://wordpress.org/support/plugin/og-pilot-dynamic-open-graph-images/reviews/)

## 贡献者

 *   [ raulonrails ](https://profiles.wordpress.org/raulonrails/)

## 支持

有话要说吗？是否需要帮助？

 [查看支持论坛](https://wordpress.org/support/plugin/og-pilot-dynamic-open-graph-images/)