acf_get_field_label()


ACF(Advanced Custom Fields)のacf_get_field_label()は、フィールドのラベルを取得するための関数です。この関数は主にACFのフィールドラベルをテンプレートやカスタムPHPコード内で動的に取得したい場合に使用されます。

構文

acf_get_field_label( string $field_key )
  • $field_key (string) — フィールドのキーを指定します。ACFで定義された一意のキーを使用します。

例1: フィールドラベルを取得して表示する

指定したフィールドのラベルを取得し、そのまま表示します。

<?php echo acf_get_field_label( 'field_123abc' ); ?>

例2: 投稿に基づいたフィールドラベルの取得

現在の投稿に関連付けられたフィールドラベルを取得します。

<?php
$post_id = get_the_ID();
echo acf_get_field_label( 'field_key_for_post_' . $post_id );
?>

例3: フォームのプレースホルダとしてラベルを使用

ACFフィールドのラベルを取得し、HTMLフォームのプレースホルダとして使用します。

<?php
$field_label = acf_get_field_label( 'field_contact_name' );
echo '<input type="text" placeholder="' . esc_attr( $field_label ) . '">';
?>

例4: 条件付きでラベルをカスタマイズ

特定の条件でラベルを変更して表示します。

<?php
$label = acf_get_field_label( 'field_user_age' );
if ( is_user_logged_in() ) {
    $label .= ' (ログイン中)';
}
echo $label;
?>

例5: フィールドリストのラベルを出力

複数のフィールドキーのラベルを取得して一覧表示します。

<?php
$field_keys = ['field_name', 'field_email', 'field_phone'];
foreach ( $field_keys as $key ) {
    echo '<li>' . acf_get_field_label( $key ) . '</li>';
}
?>

注意点

  • この関数を使用するにはACFプラグインが有効である必要があります。
  • フィールドキーが無効な場合、空の値を返すことがあります。
  • 取得したラベルを表示する際には、esc_html()esc_attr()を使用してセキュリティを確保してください。