WordPress 圖片替代文字怎麼批次檢查,避免只填檔名

WordPress 裡有幾百張圖片,想知道哪些替代文字沒填,逐張打開媒體庫會很慢。先匯出附件 ID、檔名與 alt,圈出需要查看的項目,再回到文章確認圖片用途,會比一口氣替所有圖片加上檔名可靠。

這次要查的是兩個位置:媒體庫儲存的替代文字,以及文章實際輸出的 alt。兩者可能不同。媒體庫改好了,既有文章的圖片區塊仍可能保留插入時的文字;因此批次盤點不能只看附件欄位。

先做名單,不要先批次填值

小站可以在「媒體 → 媒體庫」按日期篩選,點開圖片查看「替代文字」。不要把標題、說明與圖說當成同一欄;附件標題即使寫了完整中文,也不代表頁面上有正確 alt。

圖片數量較多時,請有 WP-CLI 權限的維護者先做唯讀匯出。下面的 PHP 檔透過 WordPress 函式列出圖片附件,輸出 CSV,不修改資料。先在自己的測試站確認欄位與編碼,再由維護者指定正確站點執行;不用為了盤點去裝一個會自動改全站文字的外掛。

<?php
$out = fopen('php://output', 'w');
fputcsv($out, ['id', 'file', 'alt']);
$ids = get_posts([
    'post_type' => 'attachment',
    'post_status' => 'inherit',
    'post_mime_type' => 'image',
    'posts_per_page' => -1,
    'fields' => 'ids',
]);
foreach ($ids as $id) {
    fputcsv($out, [
        $id,
        basename(get_attached_file($id)),
        get_post_meta($id, '_wp_attachment_image_alt', true),
    ]);
}

請維護者先準備網站公開目錄以外、只允許管理帳號讀寫的檔案目錄,再儲存程式與匯出結果。例如網站根目錄是 /srv/www/example,私人操作目錄是 /srv/private-audits,可執行:

wp --path=/srv/www/example eval-file /srv/private-audits/media-alt-audit.php > /srv/private-audits/media-alt-audit.csv

兩個完整路徑都要換成維護者核實的位置,私人操作目錄不可被網站或別名路徑對外提供;輸出檔也不要寫回網站根目錄。大型媒體庫應讓維護者改為分頁處理,避免一次載入全部附件;這個簡短範例適合小批盤點。

空值、檔名與重複句,先標記成待看

打開 CSV 後先篩空值,再看像 IMG_0012、banner-final-2 這類檔名,或每張都相同的「網站圖片」。這些是檢查線索,不是可以直接判失敗的規則。空 alt 可能是刻意留給裝飾圖片;相同 alt 也可能來自相同用途,仍要看文章。

在名單旁加入使用頁面、圖片用途、預計修改與確認人。用途先用幾個容易分的詞,例如「說明內容」「操作入口」「裝飾」。同一附件若出現在兩個頁面,不要只記媒體庫的「上傳至」:那個欄位不能列出所有使用位置。

本例在一套 WordPress 裡建立三個圖片附件。修改前匯出的名單分別是空值、IMG_0012 與「橙色幾何圖形」;只修改第二張後,再另存一份修改後名單,便能看到兩張有描述、一張仍為空值。查出的空值只列為待檢,沒有整批自動補字;這是避免誤改裝飾圖的重要一步。

改一張圖片,看看文章是不是跟著變

選一張確認要修的圖,先記附件 ID、舊 alt 與用到它的文章。到媒體庫將「檔名」換成對應用途的文字,例如「模板首頁的文章卡片與分類入口」。如果你需要判斷這張圖究竟該說什麼,可先看封面、操作圖與連結圖的 alt 用法;本篇重點是找到和核對漏項。

本例將一張圖片的媒體庫 alt 從 IMG_0012 改成「橙色幾何圖形」。另外一篇示範文章早已儲存 alt="IMG_0012",重新讀取正文時仍是舊字。附件資料更新成功,並沒有回頭改寫文章的 HTML。

這也是為什麼修完媒體庫後,要開啟文章編輯器,選取原圖片區塊,核對側欄的替代文字並儲存,再開預覽。不要為了更新 alt 直接刪掉圖片重插:原圖的裁切、連結或圖說可能因此要重新設定。

讓維護者分清三種圖片來源

區塊文章可能把 alt 存在正文裡;主題用 WordPress 圖片函式動態輸出時,則可能讀取附件 meta;外掛、頁面編輯器或自訂 HTML 又可能自行儲存。先看該頁實際用哪種方式,才能知道該修媒體庫、文章區塊還是外掛欄位。

WP-CLI 的 wp post meta get 可以讀取附件欄位,維護者在指定附件改值後也能再反查,但它只證明資料層。若同一圖片在文章中用作連結,在另一頁只是裝飾,頁面各自的 alt 可能應該不同,不能用全站附件值把兩邊都蓋成同一句。

有權限處理程式碼的維護者,可以在瀏覽器開發者工具中選取文章的 img,核對實際 alt。一般站長則先用編輯器確認欄位,再請維護者查頁面輸出。圖片看得見,並不能告訴你替代文字是否已套用。

怎樣知道這一批可以收尾?

開始前先保存附件舊值與使用頁面。附件 ID 比檔名可靠:同名檔可能被 WordPress 改成帶數字的新名稱,不同尺寸的縮圖也不是另一份可隨意填字的附件。盤點時以附件為單位,頁面核對時以每個圖片用途為單位,才不會把一張原圖和它的幾個縮圖重複當成多個漏項。

若名單沒有某張頁面圖片,也不要立即認為匯出失敗。圖片可能來自外部網址、主題內建素材,或頁面編輯器自行保存的資料。先記實際圖片網址和頁面位置,交給維護者判斷它是否屬於媒體庫;這份附件查詢不會列出整個網站所有圖片。

試算表開啟 CSV 時選 UTF-8,附件 ID 欄保留數字,替代文字欄當文字閱讀。不要因中文顯示亂碼便另存覆蓋原檔;先確認匯入編碼。若媒體欄位包含會被試算表當成公式的字元,請維護者用純文字方式檢查,匯出檔只供盤點,不從不明來源開啟執行內容。

交接時留下四個結果就夠用:已修並核對頁面、確認保留空值、由其他欄位控制、尚未找到使用位置。這些狀態比只填「完成」更有幫助,下次換模板時也能知道哪類圖片需要再查。尤其首頁卡片的封面若由主題輸出,應直接看卡片上的圖片元素,而不是只查看文章正文。

先做五到十張有把握的圖片,保留原值。每張至少記下附件 ID、修改位置、使用頁面與頁面核對結果;共用圖片多看一個不同用途的頁面。若預覽還顯示舊字,先查文章儲存內容和快取,不要反覆把媒體庫改來改去。

盤點後空值仍可能存在。把「確認作裝飾而保留空值」與「還沒找到使用頁面」分開,下一次才知道哪些已處理,哪些仍需查看。這份名單是維護記錄,不是可直接拿來評分網站的 SEO 指標;填滿 alt 也不能保證搜尋排名提高。

如果改錯,依原值還原對應附件或文章區塊,再查預覽。不要把匯出的 CSV 當成可以一鍵覆蓋全庫的修改檔。先理解每張圖放在哪裡,再小批修正,才不會把原本合理的裝飾圖變成冗長朗讀。

參考資料

原文鏈接:https://wntheme.com/wordpress-media-alt-audit/,轉載請註明出處。
0

評論0

顯示驗證碼
沒有帳號?註冊  忘記密碼?