~/blog/ai-wordpress-smart-website-building-guide-2025-3.md
API 串接與系統整合 · 2026 / 01 / 20

官網只會「展示」就輸了!2025 AI + WordPress 深度整合實戰:打造 24 小時自動接單的智慧大腦

Eric — 浪花科技創辦人 / AI 架構師
Eric
浪花科技創辦人 · AI 架構師
官網只會「展示」就輸了!2025 AI + WordPress 深度整合實戰:打造 24 小時自動接單的智慧大腦
目錄 table-of-contents.md

智慧官網的關鍵不是外掛,而是「架構」

展示型官網的本質是一張不會動的名片,真正值錢的是會接單、會判斷、會主動通知的系統。把 WordPress 升級到這個層級,關鍵不在於裝哪個 AI 外掛,而在於三層架構:WordPress 負責內容、LLM API 負責思考、n8n(或其他自動化層)在背景把兩者安全地串起來。這篇就把這套架構從頭拆給你看。

本文要解決的問題很明確:怎麼在不拖垮網站效能、不亂花 API 費用、也不讓 AI 對客戶亂承諾的前提下,真正把「AI 大腦」裝進 WordPress。下面會從架構、PHP 實作、n8n 自動化流程,到一份血淚避坑清單,一次講清楚。

嗨,我是 Eric,浪花科技的資深工程師。如果你的 WordPress 官網還停留在「放幾張美圖、寫幾段公司簡介、留個聯絡表單」的階段,那我得老實告訴你:你的網站其實還在「石器時代」

2025 年的網路戰場,已經不是比誰的版面設計比較炫,而是比誰的網站更「聰明」。所謂的「AI + WordPress 智慧官網」,並不是裝個外掛讓它自動寫部落格文章這麼簡單。真正的智慧官網,是一個能夠感知使用者行為、自動處理數據、甚至主動發起銷售對話的數位有機體。

為什麼要把 WordPress「AI 化」?

很多客戶問我:「Eric,我的網站現在運作得好好的,為什麼要搞得這麼複雜?」

答案很簡單:效率與轉化率的極限

傳統的 WordPress 網站是被動的。訪客來了,看了,走了,你不知道他們在想什麼,除非他們填寫表單。但導入 AI 後,你的網站可以做到以下幾件事:

  • 即時意圖識別:透過 AI 分析訪客在站內的搜尋關鍵字或瀏覽路徑,判斷他是「隨便看看」還是「急需購買」。
  • 動態內容生成:根據使用者的標籤(Tag),自動調整 Landing Page 的文案風格(這需要搭配 CRM,後面會講)。
  • 24/7 智慧客服:不是那種只會回罐頭訊息的笨機器人,而是讀過你所有產品手冊、能用 RAG(Retrieval-Augmented Generation,檢索增強生成)技術回答刁鑽問題的 AI 業務。

這三件事的共同點是:它們都把「人原本要花時間做的判斷與回應」交給機器在背景完成。網站不再只是被動等表單,而是主動加工每一筆互動。

智慧官網的核心架構:三大支柱

要建立一個「活的」網站,我們不能只靠單一外掛。身為工程師,我建議的架構通常包含三個部分:

  1. WordPress(CMS 核心):負責內容管理與前端展示,也就是「身體」。
  2. LLM API 層(大腦):負責邏輯處理與生成,例如 OpenAI 或 Anthropic 的模型,本文範例以 OpenAI 為例。
  3. 中介自動化層(神經系統):強烈推薦使用 n8n,它是連接 WP 與 AI 的橋樑,能把耗時的 API 請求移到背景執行,避免你的 WordPress 因為過多即時請求而卡頓。

為什麼要多一層自動化層,不直接讓 WordPress 呼叫 AI?

這是新手最常忽略的設計重點。直接在 WordPress 的請求週期裡同步呼叫 LLM,會讓使用者的瀏覽器一路卡在那裡等 AI 回應;而 LLM 的回應時間本來就不穩定。把這段工作交給中介層(n8n、佇列、或排程),WordPress 可以「收下請求、立刻回應、稍後再處理」,這就是後面避坑指南會反覆強調的非同步思維

技術實戰:如何在 WordPress 中串接 AI 大腦

工程師的囉嗦時間結束,我們來看 Code。雖然市面上有很多 AI 外掛,但如果你想做深度整合(例如:在使用者提交表單後,讓 AI 自動分析需求並給出建議),手寫 API 串接是最靈活的。

以下是一個簡單的 PHP 範例,展示如何在 functions.php 中封裝一個呼叫 OpenAI 的函數。這段程式碼可以用在你的外掛或子佈景主題中。

步驟 1:封裝 OpenAI API 請求

請注意,為了安全起見,千萬不要將 API Key 直接寫死在程式碼中,建議存在 wp-config.php 或資料庫的 Option 表中。寫死在程式碼裡,一旦檔案外洩或被加入版本控制,金鑰就等於公開。

function roamer_call_openai_api($prompt) {
    $api_key = defined('OPENAI_API_KEY') ? OPENAI_API_KEY : '';

    if (empty($api_key)) {
        return new WP_Error('missing_key', 'OpenAI API Key尚未設定');
    }

    $url = 'https://api.openai.com/v1/chat/completions';

    $body = json_encode([
        'model' => 'gpt-4o',
        'messages' => [
            ['role' => 'system', 'content' => '你是一位專業的網站助手,請以繁體中文回答。'],
            ['role' => 'user', 'content' => $prompt]
        ],
        'temperature' => 0.7,
    ]);

    $args = [
        'body'        => $body,
        'headers'     => [
            'Authorization' => 'Bearer ' . $api_key,
            'Content-Type'  => 'application/json',
        ],
        'timeout'     => 45,
        'blocking'    => true,
    ];

    $response = wp_remote_post($url, $args);

    if (is_wp_error($response)) {
        return $response->get_error_message();
    }

    $body = wp_remote_retrieve_body($response);
    $data = json_decode($body, true);

    if (isset($data['choices'][0]['message']['content'])) {
        return $data['choices'][0]['message']['content'];
    } else {
        return 'API 回傳格式錯誤或額度不足';
    }
}

這段程式碼有三個值得留意的設計:用 wp_remote_post() 而不是直接 curl,是為了沿用 WordPress 內建的 HTTP API 與錯誤處理;timeout 設為 45 秒,是因為 LLM 回應通常比一般 API 慢;最後用 is_wp_error() 與回傳結構的雙重檢查,確保網路失敗或回傳異常時不會直接讓頁面噴錯。

步驟 2:應用場景——自動化留言回覆建議

有了上面的函數,我們就可以做很多事。例如,當後台收到新留言時,我們想讓 AI 自動生成一個回覆草稿:

add_action('comment_post', 'roamer_generate_ai_reply_draft', 10, 2);

function roamer_generate_ai_reply_draft($comment_ID, $comment_approved) {
    // 避免 AI 回覆垃圾留言
    if ($comment_approved === 'spam') return;

    $comment = get_comment($comment_ID);
    $user_msg = $comment->comment_content;

    // 建構 Prompt
    $prompt = "使用者留言:{$user_msg}。請以網站管理員的身份,生成一段親切、專業的回覆草稿。";

    // 呼叫我們先前寫好的函數
    $ai_reply = roamer_call_openai_api($prompt);

    // 將 $ai_reply 存入 comment meta,供管理員審核後發布
    update_comment_meta($comment_ID, 'ai_draft_reply', $ai_reply);
}

注意這裡的關鍵設計:AI 生成的不是「直接發布的回覆」,而是存進 comment meta 的草稿,必須由管理員審核後才送出。這個「人在迴路(human-in-the-loop)」的習慣,會在避坑指南再次出現,因為它是控制 AI 風險最便宜的方法。

不過,這只是最基礎的應用。comment_post 這個 hook 是在請求週期內同步觸發的,如果直接在裡面等 OpenAI 回應,留言送出就會變慢。在實際的企業專案中,我們通常不會讓 WordPress 直接扛這個運算壓力,而是透過 Webhook 把資料丟給 n8n 處理。

進階架構:用 n8n 打造自動化神經網絡

如果你想建立真正的「智慧官網」,n8n 是我目前最推薦的工具。它能讓你在不寫太多程式碼的情況下,將 WordPress 與 AI、CRM、Slack 串接起來。

場景:智慧詢價表單(Smart Quote Form)

想像一下這個流程:

  1. 使用者在 WordPress 填寫「網站建置需求表單」。
  2. Gravity Forms 或 Contact Form 7 送出 Webhook 給 n8n。
  3. n8n 節點 1(AI 分析):將使用者的需求描述丟給 OpenAI,請 AI 分析預算範圍、需求明確度,並給出一個「潛在客戶評分(Lead Score)」。
  4. n8n 節點 2(CRM 建檔):將客戶資料連同 AI 的分析結果,寫入 HubSpot 或 Salesforce。
  5. n8n 節點 3(即時通知):如果評分超過門檻,透過 LINE Notify 或 Slack 直接 tag 業務主管:「嘿!有一條高價值線索,AI 建議這樣切入……」。

這就是我所謂的「智慧」。它不再只是一個單純的資料傳輸,而是經過了 AI 的認知與加工,讓你的業務團隊省下大量過濾名單的時間。

為什麼這套流程適合放在 n8n,而不是塞進 WordPress?

三個現實理由:

  • 解耦:表單、AI、CRM、通知各自是獨立節點,任何一個服務改了,你只動那一段,不用回去翻 WordPress 主題程式碼。
  • 容錯與重試:當某個外部服務(例如 CRM)暫時失敗時,自動化層比 PHP 請求週期更容易做到重試與錯誤記錄,而不是讓使用者的表單送出直接失敗。
  • 效能隔離:所有耗時運算都在 WordPress 之外發生,使用者送完表單立刻看到「已收到」,網站不會被 AI 拖慢。

避坑指南:工程師的血淚經驗

在幫客戶導入 AI + WordPress 的過程中,我也踩過不少坑,這裡列出幾點提醒大家,避免重蹈覆轍:

  • API Timeout 問題:OpenAI 的回應有時很慢(可能超過 30 秒),WordPress 預設的 PHP 執行時間可能會超時。解決方案是使用「非同步處理」(Asynchronous Processing),例如 WP Cron 或 Action Scheduler 把工作排到背景,或是乾脆交給 n8n 處理。
  • 幻覺(Hallucinations):永遠不要讓 AI 直接面對客戶而不經人工審核,除非你已經做好了非常嚴格的 Prompt Engineering 和 RAG 知識庫限制。否則 AI 可能會承諾客戶你們公司根本沒有的優惠。前面留言草稿範例「先存 meta、再人工審核」就是這個原則的具體落地。
  • 成本控管:記得在程式碼中加入快取(Cache)機制。如果同一個問題已經問過了,就直接從資料庫撈答案,不要每次都 Call API 燒錢。FAQ 類型、產品規格類型的重複問題,最適合用快取攔下來。

一個簡單的判斷原則

凡是「會等很久」「會花錢」「可能說錯話」的環節,就不要讓它發生在使用者按下按鈕的當下。把它推到背景、加上快取、留一道人工關卡——這三招幾乎能解掉 AI 整合八成的事故。

結語:從「擁有網站」到「擁有數位大腦」

2025 年,架設一個 WordPress 網站已經沒有技術門檻了。真正的門檻在於,你能不能讓這個網站成為你企業流程的一部分,成為一個能 24 小時工作的超級員工。

透過 API 串接 LLM,再利用 n8n 自動化流程,我們能讓 WordPress 脫胎換骨。這不僅僅是技術的堆疊,更是商業模式的升級。

不想讓官網淪為數位裝飾品?如果你在實作上遇到困難,或需要專業團隊幫你規劃這套智慧架構,歡迎透過官網的聯絡表單與浪花科技聊聊。

延伸閱讀

// FAQ

常見問題

為什麼不直接讓 WordPress 呼叫 AI,而要多一層 n8n 自動化層?
若在 WordPress 的請求週期裡同步呼叫 LLM,使用者瀏覽器會一路卡著等回應,而 LLM 回應時間本來就不穩定。把這段工作交給中介層(n8n、佇列或排程),WordPress 就能「收下請求、立刻回應、稍後再處理」,這就是非同步思維。
在 WordPress 手寫串接 OpenAI API 有哪些設計要點?
建議用 WordPress 內建的 wp_remote_post() 而非直接 curl,以沿用內建 HTTP API 與錯誤處理;timeout 設長一點(例如 45 秒),因為 LLM 回應通常較慢;並用 is_wp_error() 搭配檢查回傳結構,確保網路失敗或回應異常時頁面不會直接報錯。
OpenAI 的 API Key 可以直接寫在程式碼裡嗎?
不可以。API Key 寫死在程式碼中,一旦檔案外洩或被加入版本控制就等於公開。建議把金鑰存在 wp-config.php 或資料庫的 Option 表中,再由程式讀取。
讓 AI 自動回覆留言安全嗎?
關鍵是不要讓 AI 直接發布。較安全的做法是把 AI 產出存成 comment meta 草稿,必須由管理員審核後才送出。這種「人在迴路(human-in-the-loop)」是控制 AI 風險最便宜的方法。
~/roamer-tech/newsletter // FREE
// newsletter

訂閱免費電子報

把 AI 自動化、企業系統設計與 WordPress / Laravel 開發的真實案例和可直接照做的技巧,整理成電子報寄給你。只寄精選內容、不灌垃圾信,一鍵就能退訂。

$
// final.exec()

準備好讓你的網站開始為你工作了嗎?