WordPressプラグイン「Advanced Custom Fields」のフィールド名を後から変更する方法


WordPressデベロッパーなら誰もが知っている便利なプラグイン「Advanced Custom Fields」ですが、使ってて不満に感じたのは「定義したフィールド名を後から変更する機能がない」ことです。

後からリファクタリングしていると、「やっぱり”book”じゃなくて、”books”にすればよかった… でも、もうデータが入っているしね…」って悩むことってありますよね?

フィード名を後から変える方法

ACFではWordPressのメタデータを使ってフィードの値を保存しています。

例えばACF側でフィード名がbookのフィードを作成して、投稿ページ側でそのフィードを埋めて保存すると、データベースのwp_postmetaテーブルにmeta_keyカラムの値がbook_bookのレコードが2つ挿入されます。bookには記事で埋めた値が入っていて、_bookにはACFが利用するフィードオブジェクトへの参照IDが入ってます。

このように、ごく普通のWordPressメタデータを使っていますので、フィード名を変えたかったら、まずACF管理画面でフィード名を変えて保存します。そのあと、以下のSQL文を実行すればOKです。

UPDATE wp_postmeta
SET meta_key = '新しいフィード名'
WHERE meta_key = '古いフィード名';

UPDATE wp_postmeta
SET meta_key = '_新しいフィード名'
WHERE meta_key = '_古いフィード名';

以上、意外と簡単です!ちょっとしたTipsでした!


ABOUTこの記事をかいた人

Hi, 中国四川出身の王です。2008年に日本に渡り、大学卒業後Web制作会社勤務を経て、現在はフリーランスとしてゆるりと働いています。サイト制作の全般を担当しています。好きな生き物はプーティ(マイCat)です。趣味はアニメ鑑賞です。画家になるのが夢だったりします!