WordPress 文章發布自動同步 LinkedIn——WP LinkedIn Auto Share 外掛介紹與設定教學
AI 文章延伸
選擇平台後可直接帶入閱讀脈絡,快速整理重點、補齊盲點,並延伸到同站相關文章。
WP LinkedIn Auto Share 是一支免費、開源的 WordPress 外掛,讓你在按下「發布」的瞬間,文章就自動出現在 LinkedIn 動態牆上。不需要另外開分頁、不需要複製貼上,一次設定完就能長期使用。
這篇文章會說明我們為什麼要寫這支外掛,以及從零開始的完整設定流程。
為什麼要開發這支外掛
我們長期經營技術部落格,每次發完文章都會手動把連結貼到 LinkedIn。流程很簡單——打開 LinkedIn、寫幾句話、貼上連結、按發布。問題是,簡單的事情重複做一百次就不簡單了。
市面上當然有現成的方案。Jetpack Social 可以同步到多個社群平台,但它綁定 WordPress.com 帳號,而且免費版有每月分享次數限制。Buffer 之類的第三方排程工具功能強大,但對只想同步 LinkedIn 的人來說太重了,還需要額外註冊帳號。
WordPress.org 上有幾支 LinkedIn 同步外掛,像是 WP LinkedIn Auto Publish 和 WP to LinkedIn Auto Publish,功能都算完整。但我們的需求很單純——只要能在發布文章時自動同步到個人 LinkedIn,不需要排程、不需要多平台,也不想為了這個功能裝一支大而全的外掛。
所以我們決定自己寫一支。目標很明確:只做 LinkedIn 同步這一件事,輕量、好理解、容易維護。
功能一覽
這支外掛刻意保持輕量,核心功能如下:
- 直接貼入 Access Token——從 LinkedIn Developer Portal 產生 Token 貼上即可,不需要設定 Redirect URL 和 OAuth 流程
- 自訂貼文範本——用
{title}、{excerpt}、{url}、{tags}四個變數組合你想要的格式 - 逐篇控制——每篇文章側邊欄都有一個 checkbox,決定這篇要不要同步
- 全自動模式——嫌逐篇勾選麻煩的話,開啟全自動模式,所有新文章一律同步
- 防重複機制——每篇文章只會發一次,更新已發布的文章不會重複發送
- 錯誤回報——同步失敗時,文章編輯頁會顯示具體的錯誤訊息
整支外掛就一個 PHP 檔案,沒有前端建置流程,也沒有額外的 composer 依賴。
設定步驟
Step 1:建立 LinkedIn App
到 LinkedIn Developer Portal 建立一個新的應用程式。建立時需要關聯一個 LinkedIn Company Page——如果沒有的話,先隨便建一個就好,不影響後續個人帳號的同步功能。
建好之後,進入 App 的 Products 頁籤,申請開通以下兩個產品:
- Share on LinkedIn
- Sign In with LinkedIn using OpenID Connect
這兩個通常會即時核准,不需要等審核。

Step 2:產生 Access Token
在 LinkedIn Developer Portal 中,進入你的 App,前往 OAuth 2.0 tools 頁面,點擊「Create token」。

產生 Token 時,確保 scope 包含以下三個權限:
w_member_social(發文必要)openidprofile
產生後複製整段 Access Token。
Step 3:貼入 Token 並儲存
回到 WordPress 後台 設定 → LinkedIn Auto Share,在 Step 1 區塊的 Access Token 欄位貼上剛才複製的 Token,按下儲存。外掛會自動驗證 Token 並取得你的 LinkedIn 帳號資訊,成功後會顯示已連結的帳號名稱。

整個流程大約兩分鐘。
自訂貼文範本
預設的貼文格式是文章標題加摘要加連結加標籤,但你可以在設定頁面自由調整。支援的變數:
| 變數 | 內容 |
|---|---|
{title} | 文章標題 |
{excerpt} | 摘要(優先使用手動摘要,沒有則自動擷取前 40 個字) |
{url} | 文章永久連結 |
{tags} | 文章標籤,自動轉成 #hashtag 格式 |
LinkedIn 貼文上限是 3,000 字,超出的部分會自動截斷。
一個實用的範本範例:
{title}
{excerpt}
👉 閱讀全文:{url}
{tags}
發布文章時的操作
設定完成後,日常操作非常簡單。
在文章編輯器的側邊欄,你會看到一個「LinkedIn Auto Share」區塊,裡面有一個「發布時同步到 LinkedIn」的 checkbox。勾選後按下發布,文章就會自動出現在你的 LinkedIn 動態上。

如果你開啟了全自動模式,連 checkbox 都不用勾,所有新文章預設都會同步。
同步成功後,meta box 會顯示綠色的「已同步到 LinkedIn」標記和同步時間。萬一失敗了,會顯示具體的錯誤訊息——通常是 token 過期需要重新連結。
技術細節:Gutenberg 的 Meta Box 時序陷阱
開發過程中我們踩了兩個坑值得一提。
第一個坑是用 transition_post_status hook 來偵測發布事件。在傳統編輯器下一切正常,但 Gutenberg 是先透過 REST API 更新文章狀態,meta box 的資料在另一個獨立的請求才會寫入。所以我們改用 WordPress 5.6 引入的 wp_after_insert_post hook。
但光換 hook 還不夠——這是第二個坑。即使用了 wp_after_insert_post,Gutenberg 的 meta box 資料仍然是在 REST API 完成發布之後才送出的(透過 iframe)。所以 wp_after_insert_post 觸發時,checkbox 的值依然還沒存進去。
最終的解法是雙重觸發:wp_after_insert_post 負責傳統編輯器和全自動模式的觸發,而 save_meta_box(處理 meta box 表單儲存)在存完 checkbox 後也補做一次同步檢查。兩邊都有防重複機制(檢查 _wplas_shared_at),所以不會重複發送。
如果你也在開發需要搭配 meta box 的外掛,記住 Gutenberg 的 meta box 儲存是獨立於文章發布的非同步流程。相關討論可以參考我們之前寫的 Vibe Coding 開發 WordPress 外掛,裡面有更多 WordPress 外掛開發的實務經驗。
下載與安裝
WP LinkedIn Auto Share 是開源專案,原始碼和 Release ZIP 都在 GitHub 上:
- GitHub Repo:oberonlai/wp-linkedin-auto-share
- Release ZIP 下載:v1.1.0
安裝方式:
- 下載 ZIP 檔案
- 到 WordPress 後台 外掛 → 安裝外掛 → 上傳外掛
- 上傳 ZIP 並啟用
- 前往 設定 → LinkedIn Auto Share 開始設定
常見問題
WordPress 文章同步到 LinkedIn 需要哪些權限?
在 LinkedIn OAuth 2.0 tools 產生 Access Token 時,需要選擇 openid、profile 和 w_member_social 三個 scope。其中 w_member_social 是發文到 LinkedIn 的必要權限。你的 LinkedIn App 必須先開通「Share on LinkedIn」產品才能使用。
更新已發布的文章會重複發送嗎?
不會。外掛會在首次同步成功後記錄時間戳,之後無論你怎麼編輯更新,都不會再發送第二次。這個設計是為了避免修改錯字或調整排版時意外洗版。
可以同步到 LinkedIn 公司頁面嗎?
目前 v1.0.0 只支援個人帳號。公司頁面的發文需要額外的 API 權限(w_organization_social),我們考慮在未來的版本中支援。
Token 過期了怎麼辦?
LinkedIn 的 access token 預設有效期限是 60 天。過期後同步會失敗,文章編輯頁會顯示錯誤訊息。到 LinkedIn OAuth 2.0 tools 重新產生一組 Token,貼回設定頁儲存即可,整個過程不到一分鐘。