大規模 OG 圖片

大規模產生 og:image 意指為大型網站的每個頁面自動建立獨特且正確的社交預覽(social preview)——涵蓋數千篇部落格文章、產品或文件頁面。FastOG 會依需求渲染每張圖片(1 次渲染),並由 Cloudflare 永久快取相同的 URL,因此規模擴大不會增加成本或設定時間。

大規模下獨特圖像的問題

手工製作數千張 1200×630 的圖像並不可行。多數團隊退而求其次,為整個網站使用一張通用卡片——這是一個錯失的機會,因為每頁帶有真實標題的卡片能獲得更多分享與點擊。解決方案是確定性的按需渲染(deterministic on-demand rendering):圖像在渲染時從頁面自身的資料推導產生。

為什麼 FastOG 能擴展

核心概念是內容簽名、快取的 URL:

  1. 您在渲染時,從頁面標題與欄位簽署一個 URL(這是內容的純函數)。
  2. 爬蟲只抓取該 URL 一次;FastOG 會渲染 PNG(1 次渲染)並在邊緣快取。
  3. 之後每次抓取相同 URL 都會從快取提供服務——立即回應且不計入。

因此,10,000 個不同頁面只計 10,000 次渲染一次,而無限次分享之後完全不計費。

批次/系統化部署

若要將 og:image 部署到整個網站,請在建立(build)時或發布(publish)時,為每個頁面產生 URL:

tsx
// Static generation — generateMetadata per route
export async function generateStaticParams() {
    return posts.map((p) => ({ slug: p.slug }));
}

export function generateMetadata({ params }) {
    const post = posts.find((p) => p.slug === params.slug);
    return {
        openGraph: {
            images: [generateOgImageUrl({
                template: "blog",
                title: post.title,
                subtitle: post.excerpt,
                author: post.author,
            })],
        },
    };
}

讓規模化成本維持低廉的模式

模式 為何有幫助
在建置或渲染時簽署 確定性的 URL → 共享快取
每種內容類型重複使用同一範本 品牌一致,減少設計決策
快取相同的 URL 重複分享不計入
在發布時產生,而非每次請求時 避免首次分享時的冷渲染

常見問題

1,000 或 10,000 頁的費用是多少?

每個唯一圖片算一次渲染。10,000 個唯一頁面 = 10,000 次渲染(僅一次);無限次重新分享不另計費。Dynamic API 方案的價格請參閱定價頁面。

內容頻繁變動的頁面該如何處理?

每次內容變更都會產生新的 URL 與新的渲染(計 1 次配額)。穩定的頁面則會持續使用快取。

可以在靜態建置期間產生 OG 圖片嗎?

可以——許多團隊會在建置/發布時(SSG)產生並儲存圖片 URL,如此一來首次分享時就不會遇到冷渲染(cold render)。

免費試用 — 無需註冊

在幾秒內預覽和測試動態 OG 圖片。

開啟免費 OG 圖片測試器

From Us

A BeCaSimulations site