本篇文章更新時間:2020/06/12
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知或向一介資男的 LINE 社群反應。
如果本站內容對你有幫助,歡迎贊助支持


這幾天使用 Headless WordPress 作法批次匯入資料時,踩到一個 ACF 的雷。

因為習慣直接看資料庫欄位來對應操作,所以 ACF 欄位如果是 Group 的話,結果是: GROUPFIELD_SUBFIELD 這樣的 meta_key ,而就算是使用 ACF 內建方法 update_field 來更新資料也會碰到。

這個雷是後台看得到資料,但前台使用 get_sub_field 方法失靈,看起來就像是匯入失敗!

找原因找好久才找到,原來是 update_field 方法把 GROUPFIELD_SUBFIELD 這樣有分組的 key 當作「一個」來寫入,沒錯,但不會觸發 ACF 的方法來處理「組」。

正確的匯入組別資料的作法為:(還沒試過用 update_sub_field

$values = array(
    '子欄位ID' => '欄位數值',
);
update_field('上層組ID', $values, $post_id);

就是不能直接用 update_field('上層組ID_子欄位ID', '欄位數值', $post_id); 來匯入哦!

真是一個不小心就踩空了XD


Share:

作者: Chun

WordPress 社群貢獻者、開源社群推廣者。專注於 WordPress 外掛開發、網站效能最佳化、伺服器管理,以及 iDempiere 開源 ERP 導入與客製開發。曾參與 WordCamp Taipei 等社群活動,GitHub Arctic Code Vault Contributor。提供資訊顧問、WordPress 開發教學、主機最佳化與企業 ERP 整合服務。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


文章
Filter
Apply Filters
Mastodon