告別手動閱讀:用 Gemini API 讓 WordPress 留言自動化分析
客戶回饋堆積如山,讓你錯失商機嗎?資深工程師 Eric 手把手教你將 Google Gemini API 植入 WordPress 網站,打造 24 小時不間斷的情感分析機器人!透過高度客製化的提示工程,我們能將混亂的留言轉化為清晰的正面/負面數據與精準摘要,徹底顛覆你的數據決策流程。這不僅大幅提升效率與數據自主權,更能讓你將寶貴的時間用在改善服務上。AI 浪潮已至,與其觀望,不如親身駕馭!立即跟著實戰教學動手實作,或聯繫浪花科技,啟動你的客製化 AI 整合方案,將數據洞察轉化為實際的營收成長!
客戶回饋淹沒你?教你用 Gemini API 打造 WordPress 情感分析機器人,躺著讀懂使用者心聲!
哈囉,我是浪花科技的資深工程師 Eric。每天看著客戶網站的後台,留言區、產品評論、客服表單… 資訊量跟雪崩一樣,你是不是也覺得頭昏腦脹?客戶回饋是金礦,這句話誰都會說,但現實是,我們常常被埋在文字堆裡,根本沒時間好好分析,更別提從中找出改善服務的洞見了。手動一篇篇讀?慢得要死,還可能因為當天心情影響判斷,完全不科學。
但時代變了。隨著像 Google Gemini 這樣強大的大型語言模型 (LLM) 問世,AI 不再是遙不可及的黑科技。今天,我就要帶你動手,把這個強大的 AI 大腦植入你的 WordPress 網站,打造一個 24 小時不休息的「情感分析機器人」。它能自動分析每一則客戶回饋,告訴你使用者是開心、生氣還是覺得普通,甚至幫你總結重點。準備好了嗎?讓我們把那些雜亂的文字,變成清晰、可操作的商業智慧吧!
為什麼是 Gemini API?AI 如何顛覆客戶回饋分析?
你可能會問,市面上不是有很多分析工具嗎?為什麼要自己動手串接 Gemini API?問得好,這就是工程師的堅持所在了。使用現成工具固然方便,但往往缺乏彈性,而且數據掌握在別人手上。自己串接 API,就像是拿到一把萬能鑰匙,你可以:
- 高度客製化: 你可以設計專屬的分析指令 (Prompt),不只是單純的正面/負面,甚至可以要求 AI 判斷回饋屬於「功能建議」、「價格問題」還是「客服抱怨」。
- 成本效益: 對於中小型網站來說,API 的用量計費模式,前期成本可能遠低於訂閱昂貴的 SaaS 服務。
- 數據自主: 分析結果直接儲存在你的 WordPress 資料庫,你可以隨心所欲地進行二次利用,例如製作報表、觸發自動化流程等。
- 掌握最新技術: Google 不斷更新其 AI 模型,像是最新的 Gemini 1.5 Pro 擁有超大上下文視窗,未來可應用的場景只會更廣。自己串接,才能第一時間享受到技術紅利。
我們的目標很明確:將使用者留下的非結構化文字(例如:「你們家新出的鍵盤手感超棒,但物流速度可以再快點嗎?」),轉化為機器看得懂的結構化數據(例如:{ "sentiment": "positive", "category": "product_feedback", "summary": "對鍵盤手感滿意,但建議改善物流速度。" })。有了這些數據,一切都變得簡單了。
架構藍圖:WordPress 如何與 Gemini API 對話?
在我們開始寫程式碼之前,先搞懂整個流程是很重要的,這能讓你清楚知道每一步的目的。這就像蓋房子前要先看設計圖一樣,不然蓋出來可能會變成比薩斜塔。
整個自動化流程大致如下:
- 觸發事件: 使用者在你的網站上提交了一則新留言或評論。
- WordPress 掛鉤 (Hook): WordPress 內建的機制會「攔截」到這個事件。
- 執行函式: 我們撰寫的 PHP 函式被觸發,它會取得留言內容。
- API 請求: PHP 函式打包好我們的分析指令和留言內容,透過 HTTP 請求發送給 Google Gemini API。
- AI 分析: Gemini API 收到請求後,進行自然語言處理與情感分析。
- API 回應: Gemini API 將分析結果以 JSON 格式回傳給我們的 WordPress 網站。
- 儲存數據: 我們的 PHP 函式解析回傳的 JSON,並將「正面」、「負面」等標籤,以及重點摘要,存到資料庫對應的留言欄位中。
聽起來很順暢吧?要完成這個任務,你需要準備以下幾樣東西:
- 一個 WordPress 網站(這不是廢話嗎)。
- 一個 Google 帳號,用來在 Google AI Studio 取得免費的 API 金鑰。
- 一點點 PHP 的基礎概念,不過別擔心,跟著我的程式碼複製貼上,你也能完成。
- 一顆樂於嘗試的心!
實戰教學:一步步打造你的 AI 分析引擎
理論說完了,來點實際的吧!我會以分析「文章留言」為範例,手把手帶你完成整個建置過程。
步驟一:取得你的 Gemini API 金鑰
首先,我們需要一把跟 Google AI 對話的「鑰匙」。
- 前往 Google AI Studio。
- 用你的 Google 帳號登入,並同意服務條款。
- 點擊左上角的「Get API key」,然後「Create API key in new project」。
- 你會得到一長串的字元,這就是你的 API 金鑰。務必妥善保管,不要外洩!
身為一個有經驗的工程師,我必須囉嗦一句:千萬不要把 API 金鑰直接寫在你的主題 `functions.php` 檔案裡!這非常不安全。最好的做法是把它定義在 `wp-config.php` 檔案中。
打開你 WordPress 根目錄的 `wp-config.php` 檔案,在 /* That's all, stop editing! Happy publishing. */ 這行註解的上方,加入以下程式碼:
define( 'ROAMER_GEMINI_API_KEY', '貼上你剛剛取得的API金鑰' );
步驟二:設定 WordPress 掛鉤 (Hook),攔截新回饋
接著,我們要告訴 WordPress:「喂!只要有新留言進來,就通知我一下!」這就要用到 WordPress 強大的 Action Hook 機制。
打開你佈景主題的 `functions.php` 檔案(建議使用子佈景主題,以免主題更新後修改被覆蓋),加入以下程式碼:
add_action( 'comment_post', 'roamer_analyze_comment_sentiment', 10, 1 );
這行程式碼的意思是,當 `comment_post` 這個動作(也就是成功新增一筆留言)發生時,就去執行我們等下要寫的 `roamer_analyze_comment_sentiment` 這個函式。
步驟三:呼叫 Gemini API 的核心函式
重頭戲來了!我們要來撰寫實際跟 Gemini API 溝通的 PHP 函式。這段程式碼會負責組合請求、發送請求,並接收回應。請將以下完整的函式碼加到你的 `functions.php` 檔案裡。
function roamer_analyze_comment_sentiment( $comment_id ) {
// 檢查 API 金鑰是否存在,不存在就直接結束,避免出錯
if ( !defined( 'ROAMER_GEMINI_API_KEY' ) ) {
return;
}
// 透過留言 ID 取得完整的留言物件
$comment = get_comment( $comment_id );
if ( !$comment ) {
return;
}
$api_key = ROAMER_GEMINI_API_KEY;
$api_url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key=' . $api_key;
// 這就是我們給 AI 的指令 (Prompt),非常關鍵!
// 我們要求它回傳固定的 JSON 格式,方便後續處理
$prompt = '請將以下使用者評論進行情感分析,判斷它是正面的(positive)、負面的(negative),還是中性的(neutral)。' .
'請只回傳一個符合規範的 JSON 物件,不要有其他任何文字或說明。' .
'JSON 物件必須包含兩個鍵:' .
'1. "sentiment": 其值為 "positive", "negative", 或 "neutral" 其中之一。' .
'2. "summary": 用不超過25個字的繁體中文總結這則評論的核心觀點。' .
'\n\n評論內容如下:\n' . $comment->comment_content;
// 組合要發送給 API 的資料
$request_body = [
'contents' => [
[
'parts' => [
['text' => $prompt]
]
]
]
];
// 使用 WordPress 內建的 wp_remote_post 函式來發送請求
$response = wp_remote_post( $api_url, [
'headers' => ['Content-Type' => 'application/json'],
'body' => json_encode( $request_body ),
'timeout' => 30, // 設定30秒超時,避免網站卡住
]);
// 檢查 API 請求是否成功
if ( is_wp_error( $response ) || wp_remote_retrieve_response_code( $response ) != 200 ) {
// 可以在這裡記錄錯誤日誌,以便追蹤問題
error_log('Gemini API request failed: ' . print_r($response, true));
return;
}
// 解析 API 回傳的 JSON 資料
$response_body = json_decode( wp_remote_retrieve_body( $response ), true );
$ai_response_text = $response_body['candidates'][0]['content']['parts'][0]['text'] ?? '';
// Gemini 有時會回傳被 Markdown 包裹的 JSON,我們需要把它清乾淨
$clean_json_text = trim( str_replace( ['```json', '```'], '', $ai_response_text ) );
$analysis_result = json_decode( $clean_json_text, true );
// 確保解析後的資料是我們預期的格式,再進行儲存
if ( isset( $analysis_result['sentiment'] ) && isset( $analysis_result['summary'] ) ) {
// 使用 update_comment_meta 將分析結果存到資料庫
update_comment_meta( $comment_id, '_sentiment', sanitize_text_field( $analysis_result['sentiment'] ) );
update_comment_meta( $comment_id, '_sentiment_summary', sanitize_text_field( $analysis_result['summary'] ) );
}
}
在上面的程式碼中,最重要的部分是 $prompt 變數。我們明確地指示 AI 回傳指定的 JSON 格式,這就是所謂的「提示工程 (Prompt Engineering)」。好的指令能讓 AI 更準確地回傳我們想要的結果,大幅降低後續處理的複雜度。
步驟四:(加分題) 在後台優雅地展示分析結果
數據存進資料庫了,但如果每次都要進資料庫撈才能看,也太不方便了。讓我們多做一步,直接在 WordPress 的留言管理後台,加上一個欄位來顯示分析結果。
同樣在 `functions.php` 中,加入以下兩段程式碼:
// 1. 新增一個名為「情感分析」的欄位標題
add_filter( 'manage_edit-comments_columns', 'roamer_add_sentiment_column' );
function roamer_add_sentiment_column( $columns ) {
$columns['sentiment_analysis'] = '情感分析';
return $columns;
}
// 2. 顯示該欄位的內容
add_action( 'manage_comments_custom_column', 'roamer_display_sentiment_column_content', 10, 2 );
function roamer_display_sentiment_column_content( $column, $comment_id ) {
if ( 'sentiment_analysis' == $column ) {
$sentiment = get_comment_meta( $comment_id, '_sentiment', true );
$summary = get_comment_meta( $comment_id, '_sentiment_summary', true );
if ( $sentiment ) {
$color = 'grey';
if ($sentiment == 'positive') $color = 'green';
if ($sentiment == 'negative') $color = 'red';
echo '<strong style="color:' . $color . ';">' . esc_html( ucfirst( $sentiment ) ) . '</strong>';
if ($summary) {
echo '<br/><small>' . esc_html( $summary ) . '</small>';
}
} else {
echo '—';
}
}
}
完成後,你去「後台 > 留言」,就會驚喜地發現多了一個「情感分析」欄位!每當有新留言進來,幾秒鐘後,這裡就會自動顯示出 AI 的分析結果,是不是超酷?
工程師的囉嗦時間:上線前必須注意的魔鬼細節
程式碼能動了,但一個專業的工程師不會就此打住。在上線服務大量使用者前,還有幾個細節你必須考慮:
- 成本控管: Gemini API 目前有免費額度,但超過了就要收費。如果你的網站留言量非常大,記得去 Google Cloud Platform 設定預算快訊,避免收到驚人的帳單。
- 效能問題: API 呼叫需要時間(通常是 1-3 秒)。我們上面的寫法是「同步」執行,意味著使用者送出留言後,必須等 API 分析完,頁面才會跳轉。如果留言量大,這會影響使用者體驗。更進階的作法是「非同步」處理,先把留言存起來,再透過 WordPress 的排程 (WP-Cron) 或更可靠的 Queue/Worker 機制在背景分析。這能讓前端體驗瞬間完成,但架構也更複雜。
- 錯誤處理: 如果 Gemini API 暫時掛了,或是回傳的格式不對,我們的程式碼需要有能力優雅地處理這些錯誤,而不是讓網站直接噴出錯誤訊息。上面的範例中,我們有用
is_wp_error做基本檢查,但在正式環境,你應該要有更完善的日誌紀錄 (Logging) 機制。 - 指令的持續優化: AI 的表現高度依賴你的指令。你可能會發現,目前的指令對某些類型的留言判斷不準。這就需要你持續去微調你的 Prompt,讓它更符合你的業務需求。
結論:讓 AI 成為你的最強助攻
我們今天從零到一,成功地將 Google Gemini 這個強大的 AI 引擎整合進了 WordPress。這不只是一個有趣的技術實驗,它更是一個強大的商業工具。透過自動化的情感分析,你可以快速掌握使用者脈動、優先處理負面客訴、從正面回饋中提煉行銷亮點,真正做到「數據驅動」決策。
AI 時代的浪潮已經來了,與其觀望,不如親身駕馭它。今天這個應用只是冰山一角,未來你可以將它擴展到分析 WooCommerce 產品評論、客服表單內容,甚至結合 CRM 系統,打造更複雜的自動化工作流。
相關閱讀
- 你的 WordPress 網站是「真 AI」還是「裝 AI」?資深工程師手把手教你串接 OpenAI API,打造會思考的智慧大腦!
- 資料還在手動同步?n8n Webhook + API 終極整合術,讓你的 WordPress 數據流自動奔跑!
- 你的 WordPress 正在大開後門嗎?資深工程師的 Webhook 設計與安全驗證終極指南
覺得自己動手太複雜,或是有更進階的 AI 整合需求嗎?別擔心,這正是浪花科技的專業所在。我們專精於為企業打造客製化的 WordPress 解決方案與 API 串接自動化流程。歡迎點擊這裡,填寫表單與我們聯繫,讓我們的專家團隊,幫助你將 AI 的力量,轉化為真實的商業成長動能!
常見問題 (FAQ)
Q1: 使用 Google Gemini API 需要付費嗎?
A1: Google AI Studio 提供了免費的使用額度(有速率限制),對於一般中小型網站的留言分析來說通常足夠。如果你的用量非常大,或是需要更高的請求速率,就需要升級到 Google Cloud 的付費方案,費用會根據你使用的 token 數量計算。建議先從免費方案開始,並隨時關注用量。
Q2: 這個功能會不會拖慢我的網站速度?
A2: 會的,本篇文章提供的「同步」執行方案,會讓使用者在提交留言後,需要多等待幾秒鐘的 API 處理時間。這對使用者體驗有輕微影響。若要完全避免,需要改用「非同步」架構,也就是將 API 分析任務放到背景排程執行,這需要更進階的技術,例如使用 Action Scheduler 或伺服器端的 Queue 服務。
Q3: Gemini API 可以分析中文以外的語言嗎?
A3: 絕對可以!Gemini 是個多語言模型,支援包含英文、日文、西班牙文在內的數十種語言。你不需要特別修改程式碼,它就能自動識別並分析不同語言的回饋內容,非常強大。
Q4: 自己串接 Gemini API 跟直接安裝市面上的分析外掛有什麼不同?
A4: 最大的不同在於「彈性」與「成本」。外掛通常提供標準化的分析功能,設定簡單但客製化空間小。自己串接 API,你可以透過調整 Prompt (指令) 來打造完全符合你需求的分析維度(例如,除了情感,還可以分析回饋類型、產品關鍵字等),且數據 100% 掌握在自己手上。長期來看,API 的按用量計費模式,對很多企業來說也比固定月費的外掛更具成本效益。






