前言
laravel/head 是以流暢式 API 管理應用文件<head> 的 Laravel 官方套件。支援 title、meta 標籤、Open Graph、canonical URL、robots 指令、效能提示、結構化資料,可在 Blade、Livewire、Inertia 中運作。2026 年 7 月 28 日發佈 v0.1.0。
解析優先順序
頁面的 head 資料由優先度低到高分為以下 5 層解析:- 頁面預設值
- 路由群組中繼資料
- 路由中繼資料
- 執行時中繼資料
- 錯誤頁面中繼資料
註冊預設值
在 Service Provider 註冊整站預設值。Acme,若上層設定了 title,繼承的 suffix 也會套用(Head::title('About') 會變成 About - Acme)。
路由中繼資料
靜態頁面可直接把中繼資料附掛到路由定義。withHead() 會透過 Laravel 標準的路由中繼資料 API(->metadata() 的 head key 下)以純陣列保存,因此與路由快取相容。
執行時中繼資料
像文章標題那樣要等到請求進來才知道的值,可用Head Facade 在執行時設定。
when() / unless() 流暢寫出。
錯誤頁面
也能依狀態碼註冊中繼資料。Open Graph 與 Twitter Card
可用og() 設定 Open Graph 屬性,並用 ogImage() 等方法加入影像、影片、音訊。
title 與 description 會自動補上未設定的 og:title / og:description。
Twitter Card 只要在預設值註冊,就會自動用與 Open Graph 相同的 title、description、影像繪製。
PWA、效能與 icon
pwa() helper 可一次設定可安裝 Web 應用所需的 <head> 標籤。
主題色
主題色可在全域、路由、執行時任一層設定。使用Media enum 可為不同媒體指定主題色。
Media 也包含 Portrait 與 Landscape。
應用中繼資料與 icon
Laravel Head 內含瀏覽器與應用一般中繼資料的 helper。favicon() 是 icon() 的別名,接受相同的 type、sizes、media 參數。
效能與可發現性
Laravel Head 也能繪製效能提示、分頁連結、語系替代、Feed 發現用標籤。preloadAsset() / prefetchAsset() 會以 asset() helper 解析 URL,並依副檔名自動判斷 as 屬性。
自訂標籤
沒有專屬方法的標籤可用meta() / link() 加入。
meta() 對一般 meta 標籤使用 name=,若鍵值原本應使用 property=(如 Open Graph og: 或 article 中繼資料 article:),會自動切換。
結構化資料(JSON-LD)
內建的 schema builder 涵蓋主要 JSON-LD 類型。article、blogPosting、product、offer、brand、breadcrumbs、faq、organization、person、webPage、webSite。未定義的 factory 方法會回退到通用的 schema 物件,因此也能表達自訂 schema.org 類型。
麵包屑項目可逐一或一次加入,位置會依加入順序自動指定。
question() 逐一加入或用 questions() 一次加入。
總結
laravel/head 能跨 Blade、Livewire、Inertia 統一管理 SEO 與社交分享所需的中繼資料。透過預設、路由、執行時、錯誤頁面的 5 層架構,可保持整站一致,也能對每個頁面做彈性客製。
laravel/head 儲存庫
原始碼與最新資訊請見此處。