擺脫 SEO 隱形人:工程師揭秘 JSON-LD 結構化資料的技術底層邏輯
您的優質內容在 Google 面前是否成了「無字天書」?浪花科技資深工程師 Eric 強調,現代 SEO 關鍵在於「翻譯學」:必須將人類優美的文案轉化為機器秒懂的 JSON-LD 結構化資料。Schema 不僅能為您贏得吸睛的複合式搜尋結果(Rich Snippets),大幅提升點擊率(CTR),更是餵養 AI 搜尋模型(SGE)的必要飼料。立即停止依賴臃腫外掛,掌握工程師推薦的 JSON-LD 動態實作技巧,讓您的網站技術架構穩固,內容價值清晰呈現。別讓技術問題限制您的流量上限,即刻聯繫我們,為您的網站做一次深度健檢,啟動您的霸榜 SEO 策略!
Google 看不懂你的網站?工程師教你用 Schema 結構化資料「說人話」,打造霸榜 SEO 的底層邏輯
嗨,我是 Eric,浪花科技的資深工程師。今天不談那些虛無縹緲的「寫作心法」,我們來談點硬核的。
經常有客戶跑來問我:「Eric,為什麼我們內容寫得這麼好,關鍵字也塞了,Yoast SEO 也是綠燈,但在 Google 搜尋結果裡看起來還是平平無奇,甚至排名上不去?」
通常這時候我會打開 Chrome 的開發者工具,看一眼原始碼,然後嘆口氣:「因為你的網站只寫給人看,沒寫給機器看。」
這就是今天的主角——Schema 結構化資料 (Structured Data)。在工程師眼裡,SEO 不只是行銷學,更是一門翻譯學。你需要把人類優美的文案,翻譯成 Google 爬蟲(Crawler)能秒懂的 JSON-LD 程式碼。這篇文章,我會用工程師的視角,帶你手把手實作 Schema,讓你的 WordPress 網站在演算法眼裡「裸奔」,看清楚你每一寸的好。
什麼是 Schema 結構化資料?為什麼工程師都要懂?
想像一下,你遞給 Google 一張名片。如果是普通網頁,Google 拿到的是一張白紙,上面隨意寫滿了字,它得自己猜哪裡是名字、哪裡是電話。但如果你加了 Schema,就像是遞給它一張填好欄位的 Excel 表格:
- @type: Person(這是個人)
- name: Eric(名字叫 Eric)
- jobTitle: Senior Engineer(職稱是資深工程師)
Google 不需要「猜」,它直接「讀」。這帶來的結果就是 Rich Snippets(複合式搜尋結果)。你的網站在搜尋結果頁(SERP)上,可能會多出星星評分、產品價格、常見問題(FAQ),甚至是活動時間。這對點擊率(CTR)的提升是毀滅性的打擊——我是指打擊你的對手。
根據 2024 年 Google 最新的 Search Central 文件,隨著 SGE (Search Generative Experience) 和 AI 搜尋的崛起,結構化資料的重要性不減反增。AI 需要結構化的數據來訓練和生成準確的回答,Schema 就是餵養這些 AI 模型的最佳飼料。
JSON-LD vs. Microdata:工程師的選擇
在實作 Schema 時,主要有兩種流派:
- Microdata: 直接寫在 HTML 標籤裡(例如
<div itemscope itemtype="...">)。這簡直是前端工程師的惡夢,維護困難,改個版型就全毀了。 - JSON-LD (JavaScript Object Notation for Linked Data): 這是 Google 官方強烈推薦的格式。它是一段獨立的 JavaScript 程式碼,通常放在
<head>裡。
作為工程師,我無條件支持 JSON-LD。因為它實現了「數據與視圖分離」(Separation of Concerns)。你的 HTML 結構怎麼改都沒關係,只要確保 JSON 資料正確輸出即可。這才是現代化開發該有的樣子。
實戰教學:在 WordPress 中手刻 Schema (不依賴肥大外掛)
雖然市面上有 RankMath 或 Schema Pro 這種外掛,但身為工程師,有時候為了效能或極致的客製化(例如針對特定的 Custom Post Type 輸出特定的資料),我們會選擇在 functions.php 或自製外掛中處理。
以下我示範如何為單篇文章(Article)加入動態生成的 JSON-LD。這段程式碼可以直接用於經典編輯器或區塊編輯器環境,因為它是掛載在 wp_head 上的。
1. 基本架構
我們使用 WordPress 的 wp_head hook,在頁面頭部插入 script。
function eric_add_dynamic_schema() {
// 確保只在單篇文章頁面執行,避免全站污染
if ( !is_single() ) return;
global $post;
// 獲取特色圖片 URL
$thumbnail_url = get_the_post_thumbnail_url($post->ID, 'full') ?: '';
// 獲取作者資訊
$author_id = $post->post_author;
$author_name = get_the_author_meta('display_name', $author_id);
// 建構 JSON-LD 陣列
$schema = [
'@context' => 'https://schema.org',
'@type' => 'Article',
'headline' => get_the_title(),
'image' => [
$thumbnail_url
],
'datePublished' => get_the_date('c'), // ISO 8601 格式
'dateModified' => get_the_modified_date('c'),
'author' => [
[
'@type' => 'Person',
'name' => $author_name,
'url' => get_author_posts_url($author_id)
]
],
'publisher' => [
'@type' => 'Organization',
'name' => get_bloginfo('name'),
'logo' => [
'@type' => 'ImageObject',
'url' => 'https://yoursite.com/logo.png' // 記得換成你的 Logo
]
],
'description' => get_the_excerpt()
];
// 輸出 JSON,記得轉義以防 XSS
echo '';
}
add_action('wp_head', 'eric_add_dynamic_schema');
2. 進階技巧:巢狀結構 (Nested Schema) 與 E-E-A-T
Google 現在非常看重 E-E-A-T(經驗、專業、權威、信任)。為了讓 Google 知道這篇文章是由「真人專家」撰寫的,我們可以在 author 欄位做更多著墨,甚至連結到 sameAs(社群媒體連結)。
工程師的小囉嗦:注意上面的 dateModified。對於 SEO 來說,「更新內容」比「發布內容」更重要。如果你更新了文章,Schema 必須誠實告訴 Google,這會讓爬蟲更願意重新索引你的頁面。
常見的 Schema 類型與應用場景
不同的頁面類型,需要不同的 Schema。別在「關於我們」頁面放「產品 Schema」,那是牛頭不對馬嘴。
- LocalBusiness: 適合企業官網首頁。告訴 Google 你的地址、電話、營業時間。
- Product: WooCommerce 必備。包含價格 (offers)、庫存狀態、評分 (aggregateRating)。
- FAQPage: 這是佔領版面的神器。如果你文章最後有 QA 區塊,務必加上這個 Schema,Google 有很大概率直接把問答顯示在搜尋結果中。
- BreadcrumbList: 麵包屑導航。這有助於 Google 理解網站層級結構。
如何驗證你的 Code 沒寫壞?
工程師寫 Code 不測試,就像廚師出菜不試吃一樣危險。我們寫好了 Schema,怎麼知道 Google 吃不吃這套?
請將你的網址或程式碼片段丟進去以下兩個工具:
- Google 複合式搜尋結果測試 (Rich Results Test):這是官方標準。如果出現紅字 Error,Google 是不會顯示 Rich Snippets 的;如果是黃字 Warning,通常是建議欄位沒填,雖然不影響顯示,但建議補齊。
- Schema Markup Validator:Schema.org 官方的驗證器,更偏向語法檢查。
工程師視角的 SEO 總結
SEO 不再是關鍵字堆砌的遊戲。現代 SEO 是「內容為王,技術為后」。作為工程師,我們的職責是確保網站的技術架構(Technical SEO)足夠穩健,讓內容能被機器無障礙地理解。
Schema 結構化資料就是這種技術力的體現。它不難,但需要細心。從今天起,別再讓你的 WordPress 網站在 Google 面前「沈默寡言」,用 JSON-LD 大聲說出你的價值吧!
延伸閱讀:
- 醫師文章沒人看?資深工程師教你用程式碼打造符合 E-E-A-T 的 WordPress 醫療 SEO 模板
- Google 演算法下的隱形冠軍:WordPress 技術 SEO 終極實戰,從速度、結構到程式碼一次搞定!
- 別再手動蓋內容農場!資深工程師揭秘 WordPress 程式化 SEO,打造自動化流量帝國
你的網站結構化資料還是一團亂碼嗎?或是想導入更進階的 SEO 技術架構?
別讓技術限制了你的流量上限。
常見問題 (FAQ)
Q1: 裝了 Schema 之後,搜尋排名一定會上升嗎?
不一定,但有間接幫助。Google 官方表示 Schema 本身不是直接的排名因素(Ranking Factor),但它能產生「複合式搜尋結果」(如星等、圖片),顯著提高點擊率(CTR)。而高點擊率是向 Google 證明你內容優質的重要訊號,長期來看有助於排名提升。
Q2: 使用 Yoast SEO 或 RankMath 自動產生的 Schema 夠用嗎?
對於 90% 的中小型網站來說,RankMath 或 Yoast SEO 產生的預設 Schema 已經「夠用」。但如果你是經營特殊類型的網站(如食譜、活動、徵才、醫療),或者需要針對 E-E-A-T 進行深度優化(如連結作者多個社群檔案、引用政府數據源),手寫或客製化 JSON-LD 才能達到最佳效果。
Q3: JSON-LD 和 Microdata 混用會怎樣?
雖然 Google 能夠同時讀取兩者,但工程師強烈建議不要混用。這會導致維護上的災難(修改資料要改兩個地方),且容易產生衝突或重複資訊。建議全面轉向 JSON-LD,保持程式碼乾淨好維護。






