acf_form()


WordPress関数acf_form()は、Advanced Custom Fieldsプラグインを使用してカスタムフィールドをフロントエンドフォームで表示および送信するために使用されます。

構文

acf_form( array $args );
  • $args (array) — フォームの設定を指定する連想配列。

配列キーの詳細

  • 'post_id' (mixed) — 編集する投稿のIDまたは「new_post」を指定します。
  • 'field_groups' (array) — 表示するフィールドグループのIDを指定します。
  • 'fields' (array) — 特定のフィールドキーを指定します。
  • 'submit_value' (string) — 送信ボタンのラベル。
  • 'return' (string) — フォーム送信後にリダイレクトするURL。

例1: 投稿フォームを表示

投稿IDget_the_ID()を使用して既存の投稿を編集するフォームを表示します。

<?php
acf_form( array(
    'post_id' => get_the_ID(),
    'submit_value' => '更新',
) );
?>

例2: 新しい投稿を作成

新しい投稿を作成するためのフォームを表示します。

<?php
acf_form( array(
    'post_id' => 'new_post',
    'new_post' => array(
        'post_type' => 'post',
        'post_status' => 'draft',
    ),
    'submit_value' => '投稿を保存',
) );
?>

例3: 特定のフィールドグループを表示

フィールドグループIDarray('123', '456')を使用してフォームを表示します。

<?php
acf_form( array(
    'post_id' => get_the_ID(),
    'field_groups' => array('123', '456'),
) );
?>

例4: 特定のフィールドのみを表示

フィールドキーarray('field_abc', 'field_xyz')を指定してフォームを表示します。

<?php
acf_form( array(
    'post_id' => get_the_ID(),
    'fields' => array('field_abc', 'field_xyz'),
) );
?>

例5: フォーム送信後にリダイレクト

フォーム送信後にhome_url()にリダイレクトします。

<?php
acf_form( array(
    'post_id' => 'new_post',
    'return' => home_url(),
    'submit_value' => '投稿を保存',
) );
?>

注意事項

関数を使用する前に、Advanced Custom Fieldsプラグインが有効化されていることを確認してください。また、適切な権限を持つユーザーのみがフォームを使用できるようにしてください。


関連機能: