# Product、FAQPage、HowTo怎麼正確使用
> 拿到 Product、FAQPage、HowTo 三段代碼模板,先別急着全部複製進網站。
來源:https://www.starbox.work/zh-hant/insights/geo-guide/geo121/(星盒AI 知識中心,更新於 2026-10-07)
拿到 Product、FAQPage、HowTo 三段代碼模板,先別急着全部複製進網站。
Product(產品資訊)、FAQPage(常見問題頁面)和 HowTo(操作教程),都是 Schema.org 定義的結構化數據類型。所謂結構化數據,就是用一組標準字段告訴搜尋引擎:這個頁面介紹的是什麼,頁面中哪些內容屬於產品名稱、價格、問答或操作步驟。
JSON-LD 是編寫結構化數據的一種常用格式。它通常以一段代碼的形式放進網頁源代碼,但只能標記頁面已經提供的資訊,不能代替頁面正文。
如果頁面沒有展示價格、庫存、評價、問答、操作步驟或耗時,就不能只在 JSON-LD 中補寫這些內容。模板包含多少字段並不重要,真正決定該用哪類結構化數據的,是當前頁面寫了什麼。
這三類結構化數據的用途和 Google 目前的支持情況也不相同:
| 類型 | 適合什麼頁面 | 主要標記什麼 | Google 目前的支持情況 |
|---|---|---|---|
| Product | 單個商品或產品詳情頁 | 名稱、圖片、型號、價格、庫存等真實資訊 | 仍支持商品相關搜尋功能 |
| FAQPage | 展示多組站方固定問答的頁面 | 頁面上完整可見的問題和答案 | FAQ 富結果通常只向權威政府和健康網站展示 |
| HowTo | 有明確操作順序的教程 | 步驟、工具、材料和耗時 | HowTo 富結果已經停用 |
這裏所説的“富結果”,是指搜尋結果中可能額外出現的商品價格、庫存、問答等擴展資訊。
正確的使用順序是:先檢查頁面內容,再選擇結構化數據類型,最後填寫字段並完成驗證。
## 寫代碼前,先確認這5件事
### 1. 只標記頁面上真實可見的內容
商品價格、庫存、FAQ 答案和操作步驟,都不能只存在於 JSON-LD 中。用戶在頁面上能看到什麼,結構化數據才能標記什麼。
FAQ 可以使用摺疊組件展示,但用戶展開後必須能夠看到完整的問題和答案。
### 2. 不存在或無法確認的字段,直接刪除
模板中的示例價格、網址、評分、庫存和日期,上線前都必須替換。
如果頁面沒有對應資訊,就刪除相關字段。不要保留示例值,也不要為了讓驗證工具少報一條警告而編造數據。
### 3. 使用正確的 JSON-LD 格式
JSON-LD 應放在下面這組 HTML 標籤中。HTML 指網頁源代碼使用的標記語言。
```html
```
上線前,至少要逐項檢查並替換以下內容:
| 字段 | 含義 |
|---|---|
| `@id` | 當前產品對象的唯一標識 |
| `url` | 產品頁面的網址 |
| `name` | 產品名稱 |
| `image` | 產品圖片地址 |
| `description` | 與頁面一致的產品説明 |
| `sku` | SKU,即用於識別具體商品的庫存單位編號 |
| `brand` | 品牌名稱 |
| `priceCurrency` | 價格使用的幣種,`CNY` 表示人民幣 |
| `price` | 頁面實際展示的價格 |
| `availability` | 當前庫存狀態 |
| `itemCondition` | 商品狀態,例如模板中的 `NewCondition` 表示新品 |
Google 的 Product snippet,也就是商品摘要搜尋展示,要求提供 `name`,同時要求 `review`、`aggregateRating`、`offers` 至少有一項。上面的模板選擇了 `offers`。
如果頁面屬於可以直接購買的商品頁,還應對照 Merchant listing,也就是商家商品列表展示的相關文檔,判斷是否需要補充其他字段。
只有頁面真實展示、來源可以核驗的評價或彙總評分,才能加入 `review` 或 `aggregateRating`。沒有真實評價就刪除這些字段,不要編造評分。
價格、幣種和庫存狀態也必須與頁面可見內容一致。
### 沒有價格的 B2B 產品頁怎麼辦
B2B 指企業面向其他企業開展的業務。
沒有價格的 B2B 產品頁,仍然可以使用 Schema.org 的 Product 類型描述產品。但它是否滿足 Google 某類商品富結果的要求,需要根據 Product snippet 或 Merchant listing 的具體規則判斷。
頁面沒有真實價格時,不要用虛構價格填充 `offers`。

## FAQPage:用於頁面上的站方固定問答
FAQ 是“常見問題”的英文縮寫。FAQPage 適合標記由網站提供的多組固定問答,每個問題和答案都要完整展示在頁面上,不能只寫進結構化數據。
```html
```
`Question.name` 要對應頁面上的完整問題,`acceptedAnswer.text` 要對應頁面上的完整答案。頁面可以使用摺疊組件,但用戶必須能夠查看全部內容。
如果一個頁面只圍繞一個問題展開,並允許用戶提交多個答案,就不屬於這裏所説的站方固定問答。這類頁面應另行查看 QAPage,也就是多人問答頁面結構化數據的相關規則。
還要注意,Google 從2023年起,通常只向權威政府和健康網站展示 FAQ 富結果。
普通企業網站仍然可以保留與頁面一致、維護成本較低的 FAQPage 標記,但不能把它當作穩定的搜尋展示入口,更不能承諾添加代碼後一定出現問答富結果。
## HowTo:用於有明確順序的操作教程
HowTo 適合具有明確操作順序的教程。步驟、工具、材料和耗時,都要與頁面正文一一對應。
下面的模板以30分鐘、兩項材料、一件工具和三個步驟為例。頁面正文必須同步展示這些資訊。
```html
```
`totalTime` 使用 ISO 8601 時長格式。這是一套通用的日期和時間表示標準,其中30分鐘寫作 `PT30M`。
步驟名稱、步驟説明和錨點網址,都要與頁面內容對應。錨點網址是可以直接跳轉到頁面中某個具體步驟的連結。
頁面沒有材料或工具時,應刪除 `supply` 或 `tool` 等相應字段。
Google 已經停止展示 HowTo 富結果,Rich Results Test(富結果測試工具)也不再支持這項搜尋功能。因此,部署 HowTo 的理由不應是等待 Google 展示步驟卡片,而應是讓仍然識別 Schema.org 規則的系統更清楚地理解教程內容及其組成部分。
如果網站沒有持續維護 HowTo 數據的能力,只保留結構清楚的網頁步驟也可以。
## 三類結構化數據能不能放在同一頁
可以,但頁面必須確實同時提供這三類內容。
例如,一個產品詳情頁同時展示了具體商品、多組站方 FAQ 和完整安裝教程,就可以使用 `@graph` 把多個數據對象組織在同一段 JSON-LD 中,也可以把不同類型拆成多個 JSON-LD 代碼塊。
無論採用哪種寫法,都要滿足三個條件:
1. 每個數據對象對應的主體明確;
2. `@id` 和頁面網址對應正確;
3. 結構化數據與頁面可見內容一致。
關鍵不在於代碼塊有幾個,而在於每個對象是否真實、對象之間的關係是否清楚。不能因為手裏有三份模板,就把三類結構化數據直接放進全站所有頁面。
| 檢查項 | Product | FAQPage | HowTo |
|---|---|---|---|
| 對應主體 | 一個具體商品 | 多組站方問答 | 一個完整操作過程 |
| 頁面必須展示 | 名稱、價格、庫存等實際填寫的資訊 | 每個問題和答案 | 步驟、工具、材料、耗時等實際填寫的資訊 |
| 最容易出現的虛假字段 | 評分、評價、價格 | 頁面不存在的答案 | 不存在的步驟和耗時 |
| Google 目前的支持情況 | 仍支持商品相關功能 | 富結果通常限權威政府和健康網站 | 富結果已經停用 |
## 上線前,按這個順序驗證
### 第一步:檢查 JSON 語法
先用 JSON 解析器檢查括號、逗號、引號等語法問題,確保代碼能夠正常讀取。JSON 解析器就是檢查這類文本代碼能否被程序正確識別的工具。
### 第二步:檢查 Schema.org 規範
使用 Schema.org Validator(Schema.org 驗證器)檢查類型、字段和嵌套關係是否符合 Schema.org 規範。嵌套關係指一個數據對象被放在另一個對象內部時,兩者的從屬關係是否正確。
### 第三步:檢查 Google 支持的搜尋功能
Product 可以使用 Rich Results Test,並根據 Product snippet 或 Merchant listing 的具體使用場景處理錯誤。
FAQPage 是否顯示富結果,要考慮 Google 目前的展示限制。HowTo 已不再屬於 Rich Results Test 支持的搜尋功能。
### 第四步:檢查 Google 實際抓取的版本
頁面上線後,使用 URL Inspection(網址檢查工具)查看 Google 抓取到的內容,確認它讀取的是新版本,而不是被網站模板破壞的代碼或緩存中的舊數據。
需要再次説明:驗證通過,不等於 Google 一定展示富結果。實際展示還會受到頁面質量、展示資格、抓取狀態、用戶搜尋內容和對應搜尋功能狀態的影響。
同樣,HowTo 不再出現在 Google 富結果測試的支持項目中,也不代表 Schema.org 刪除了 HowTo 類型。Schema.org 是否保留某個類型,與 Google 是否支持相應富結果,是兩個不同的問題。
## 5個容易誤判的問題
### 1. Product 必須同時填寫 `offers`、`review` 和 `aggregateRating` 嗎
不必須。
Product snippet 要求提供 `name`,並要求 `offers`、`review`、`aggregateRating` 至少有一項。頁面上有什麼真實資訊就寫什麼,沒有真實評價就不要補寫。
### 2. 普通企業網站還要不要使用 FAQPage
可以保留與頁面一致、維護成本較低的 FAQPage。
但 Google 的 FAQ 富結果通常只向權威政府和健康網站展示,普通企業網站不能把它視為穩定的富結果入口。
### 3. HowTo 富結果停用後,HowTo 還有沒有用
Google 的 HowTo 富結果已經停用,但 Schema.org 仍然保留 HowTo 類型。
是否繼續部署,應根據其他使用方和網站的維護能力判斷,不應再把 Google 步驟富結果作為主要理由。
### 4. 三種結構化數據能不能寫進同一個 JSON-LD
可以使用 `@graph` 把多個對象放在同一個 JSON-LD 代碼塊中,也可以拆成多個代碼塊。
真正需要檢查的是對象關係、`@id`、網址,以及每項數據能否在頁面內容中找到對應資訊。
### 5. 為什麼驗證通過後仍然沒有富結果
因為驗證通過只説明當前代碼符合對應工具的規則,不代表 Google 必須展示。
頁面質量、展示資格、抓取狀態、用戶搜尋內容和對應搜尋功能的當前狀態,都可能影響最終結果。
## 最後只看三個判斷標準
Product、FAQPage 和 HowTo 不是三份複製後就能直接使用的通用代碼。每個頁面是否需要部署、應該填寫哪些字段,都要回到頁面本身判斷。
上線前只問三件事:
1. 頁面是否真的提供了這些內容?
2. 結構化數據是否與用戶看到的內容一致?
3. 網站是否有能力持續維護這些字段?
三項都能確認,再部署對應的結構化數據。缺少真實內容時,刪除字段或暫不使用,都比把示例數據直接上線更合適。
## 公開資料入口
- Google Product structured data:https://developers.google.com/search/docs/appearance/structured-data/product
- Google Product snippet:https://developers.google.com/search/docs/appearance/structured-data/product-snippet
- Google FAQ 與 HowTo 變更説明:https://developers.google.com/search/blog/2023/08/howto-faq-changes
- Schema.org Product:https://schema.org/Product
- Schema.org FAQPage:https://schema.org/FAQPage
- Schema.org HowTo:https://schema.org/HowTo