Advanced Custom Fields(ACF)をあれやこれやしてみる

WordPressでAdvanced Custom Fields(ACF)を利用するケースはあるかと思いますが今回は、ACFの値を投稿以外のページで値として利用したと思って調べてみました。

 

POST_TYPE

acf-fieldがフィールド

acf-field-groupがフィールドをまとめたグループ

 

post_name

acf-field⇒「field_」

acf-field-group⇒「group_」

という名称で保存されます。

これがKEYになります。

 

post_excerpt

ここに格納されているのがカスタムフィールドとして設定したフィールド名が入っています。

 

通常投稿から利用する場合

get_filed(‘フィールド名’)やget_field_object(‘フィールド名’)で値を取得することが可能

※これにはPOST_IDが必要。

 

 

投稿以外のページからACFのフィールドの情報を取得するには?

Key名って?いうとACFはフィールドを増やす毎にユーザーが指定したフィールド名以外にキーとなる名称を付けています。

ということで、「get_field_object(‘Key名’)」で取得できるようです。

 

じゃあ、フィールド名⇒KEYに変換できるのか?というとfunctionを作ればできる?

※post_excerpt⇒post_nameを取得する

「$wpdb->get_results」を利用してクエリを書いてみた。

 

これでpost_name(KEY)が取り出せる。

もちろん重複している場合はNGなのでカスタムフィールドを設計する際には気を付けないといけない。

 

あとは「get_field_object」にKEYを入れて内容を取り出す。

 

チェックボックスは検索向きじゃないのでタクソノミーで代用

 

これでなんとか。

コメントは受け付けていません。

サブコンテンツ

このページの先頭へ