概要
acf_get_field_groups
関数は、Advanced Custom Fields (ACF) プラグインの一部であり、WordPress でカスタムフィールドグループを取得するために使用されます。この関数は、特定の条件に基づいてフィールドグループのリストを取得するために非常に便利です。特に、カスタム投稿タイプやタクソノミーに関連するフィールドグループを表示する際などに使われます。
主な使い方
acf_get_field_groups
関数は次のような機能を実装する際によく使用されます。
- カスタム投稿タイプに関連するフィールドグループを取得する
- 特定のページや投稿に紐づくフィールドグループを表示する
- タクソノミーに関連付けられたフィールドグループを取得する
- 特定の条件に応じたフィールドグループをフィルタリングする
- テンプレートファイル内でフィールドグループを動的に取得する
- フロントエンドでのカスタマイズに際してフィールドグループを利用する
構文
acf_get_field_groups( $args );
パラメータ
$args
(array): 取得したいフィールドグループの条件を指定するための配列。例には、post_id
やpage_template
などが含まれる。
戻り値
- 配列: 指定された条件に一致するフィールドグループの配列を返す。条件に一致するものがない場合は空の配列を返す。
対応バージョン
- Advanced Custom Fields: 5.0 以降
- WordPress: 4.0 以降
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
mu_plugin_loaded | |
registered_post_type | 〇 |
plugins_loaded | 〇 |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | 〇 |
register_sidebar | |
wp_loaded | 〇 |
send_headers | |
parse_query | |
pre_get_posts | |
wp | 〇 |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル1: 全フィールドグループを取得する
$field_groups = acf_get_field_groups();
foreach ($field_groups as $group) {
echo $group['title'];
}
このコードは、サイト内に存在するすべてのフィールドグループのタイトルを取得し、表示します。
サンプル2: 特定のカスタム投稿タイプに関連するフィールドグループを取得する
$field_groups = acf_get_field_groups(['post_type' => 'your_custom_post_type']);
foreach ($field_groups as $group) {
echo $group['title'];
}
このコードは、指定したカスタム投稿タイプに関連するフィールドグループのみを取得し、タイトルを表示します。
サンプル3: 特定のページテンプレート用のフィールドグループを取得する
$field_groups = acf_get_field_groups(['page_template' => 'template-custom.php']);
foreach ($field_groups as $group) {
echo $group['title'];
}
このコードは、特定のページテンプレートに関連するフィールドグループを取得してタイトルを表示します。
サンプル4: 投稿IDに紐づくフィールドグループを取得する
$field_groups = acf_get_field_groups(['post_id' => 123]);
foreach ($field_groups as $group) {
echo $group['title'];
}
このコードは、指定した投稿IDに関連付けられたフィールドグループのみを取得し、タイトルを表示します。
サンプル5: タクソノミーに関連するフィールドグループを取得する
$field_groups = acf_get_field_groups(['taxonomy' => 'category']);
foreach ($field_groups as $group) {
echo $group['title'];
}
このコードは、指定されたタクソノミー(この場合はカテゴリー)に関連するフィールドグループのタイトルを表示します。
以上のサンプルコードは、WordPressサイトにおけるACFフィールドグループの取得方法を示しています。