acf_connect_attachment_to_post()


WordPressのacf_connect_attachment_to_post()関数は、Advanced Custom Fields (ACF) プラグインで使用され、添付ファイルを投稿またはページに関連付けるために使用されます。この関数は、ACFフィールドを使用してファイルをアップロードし、そのファイルを特定の投稿に関連付ける場面で便利です。

構文

acf_connect_attachment_to_post( int $attachment_id, int $post_id );

引数の説明:

  • $attachment_id (int) — 添付ファイルのID。
  • $post_id (int) — 投稿またはページのID。

例1: 投稿に添付ファイルを関連付ける

以下のコードは、特定の投稿に添付ファイルを関連付ける方法を示しています。

<?php acf_connect_attachment_to_post( 123, 456 ); ?>

例2: 添付ファイルをカスタム投稿タイプに関連付ける

次のコードは、カスタム投稿タイプ「product」にファイルを関連付ける方法を示しています。

<?php acf_connect_attachment_to_post( 789, get_page_by_path( 'product' )->ID ); ?>

例3: 投稿の最初の添付ファイルを関連付ける

このコードは、投稿の最初の添付ファイルをその投稿に関連付ける方法を示しています。

<?php
$post_id = 123;
$attachment_id = get_post_thumbnail_id( $post_id );
acf_connect_attachment_to_post( $attachment_id, $post_id );
?>

例4: ACFフィールドで添付ファイルを選択して関連付ける

ACFの画像フィールドで選択されたファイルを投稿に関連付ける方法です。

<?php
$attachment_id = get_field( 'image_field', 123 );
acf_connect_attachment_to_post( $attachment_id, 123 );
?>

例5: 複数の投稿に同じ添付ファイルを関連付ける

このコードは、同じ添付ファイルを複数の投稿に関連付ける方法を示しています。

<?php
$attachment_id = 456;
acf_connect_attachment_to_post( $attachment_id, 123 );
acf_connect_attachment_to_post( $attachment_id, 789 );
?>

注意点

  • この関数は、ACFがインストールされている環境でのみ機能します。
  • 添付ファイルが既に投稿に関連付けられている場合、再度関連付けを行うと上書きされる可能性があります。