acf_render_fields()


WordPressのacf_render_fields()関数は、Advanced Custom Fields(ACF)プラグインで使用される関数で、指定されたフィールドをレンダリングするために利用されます。この関数は、カスタムフィールドのHTMLを生成し、フロントエンドや管理画面に表示する際に役立ちます。

構文

acf_render_fields( array $fields, int $post_id, string $element = 'div', string $instruction = 'label' );

引数の説明:

  • $fields(array) — レンダリングするフィールドの配列。
  • $post_id(int) — フィールドが関連付けられた投稿ID。
  • $element(string) — フィールドを囲むHTML要素。デフォルトは’div’。
  • $instruction(string) — フィールドの説明を表示する位置。’label’または’field’を指定可能。

例1: 基本的なフィールドのレンダリング

この例では、指定されたフィールドをレンダリングします。

<?php acf_render_fields( array( get_field_object('field_name') ), get_the_ID() ); ?>

例2: カスタムHTML要素でフィールドを囲む

フィールドをsection要素で囲む例です。

<?php acf_render_fields( array( get_field_object('field_name') ), get_the_ID(), 'section' ); ?>

例3: フィールドの説明をフィールドの下に表示

フィールドの説明をフィールドの下に表示する例です。

<?php acf_render_fields( array( get_field_object('field_name') ), get_the_ID(), 'div', 'field' ); ?>

例4: 複数のフィールドを一度にレンダリング

複数のフィールドを一度にレンダリングする例です。

<?php acf_render_fields( array( get_field_object('field_1'), get_field_object('field_2') ), get_the_ID() ); ?>

例5: 管理画面でのフィールドレンダリング

管理画面でフィールドをレンダリングする例です。

<?php acf_render_fields( array( get_field_object('field_name') ), 'options', 'div' ); ?>

例6: カスタムフィールドのグループをレンダリング

カスタムフィールドのグループをレンダリングする例です。

<?php acf_render_fields( get_field_objects(), get_the_ID() ); ?>

例7: フィールドのラベルを非表示にする

フィールドのラベルを非表示にする例です。

<?php acf_render_fields( array( get_field_object('field_name') ), get_the_ID(), 'div', 'none' ); ?>

例8: カスタムフィールドの値を取得して表示

カスタムフィールドの値を取得して表示する例です。

<?php $field = get_field_object('field_name'); acf_render_fields( array( $field ), get_the_ID() ); ?>

注意点

  • acf_render_fields()は、ACFプラグインが有効化されている必要があります。
  • フィールドの配列を正しく指定しないと、エラーが発生する可能性があります。
  • フィールドのレンダリングは、フロントエンドと管理画面の両方で利用可能ですが、適切なコンテキストで使用する必要があります。