acf_match_location_rule()


WordPressのacf_match_location_rule()関数は、Advanced Custom Fields (ACF) プラグインのカスタムフィールドの位置ルールをマッチングするために使用されます。この関数は、特定の条件に基づいてフィールドグループの表示場所を決定します。

構文

acf_match_location_rule( string $rule, array $screen );

引数の説明

  • $rule (string) — 位置ルールの名前
  • $screen (array) — 画面情報(投稿タイプ、タクソノミーなど)を含む配列

例 1: 投稿タイプによるマッチング

投稿タイプ「ページ」にだけフィールドグループを表示する例です。

<?php
$rule = 'post_type';
$screen = array( 'post_type' => 'page' );
acf_match_location_rule( $rule, $screen );
?>

例 2: カスタム投稿タイプでフィールドを表示

「book」というカスタム投稿タイプにフィールドグループを表示する設定です。

<?php
$rule = 'post_type';
$screen = array( 'post_type' => 'book' );
acf_match_location_rule( $rule, $screen );
?>

例 3: タクソノミーによるマッチング

特定のタクソノミー(カテゴリ)に基づいてフィールドを表示する例です。

<?php
$rule = 'taxonomy';
$screen = array( 'taxonomy' => 'category' );
acf_match_location_rule( $rule, $screen );
?>

例 4: 特定のページIDでフィールドを表示

特定の投稿IDを指定して、そのページにのみフィールドを表示する例です。

<?php
$rule = 'post_id';
$screen = array( 'post_id' => get_the_ID() );
acf_match_location_rule( $rule, $screen );
?>

例 5: 投稿の状態に基づいてフィールドを表示

投稿が「公開」状態のときにのみフィールドを表示する設定です。

<?php
$rule = 'post_status';
$screen = array( 'post_status' => 'publish' );
acf_match_location_rule( $rule, $screen );
?>

注意点

  • 位置ルールの設定はACFプラグインの設定に依存します。
  • 引数として渡される$screen配列は、必要な情報を正確に設定する必要があります。
  • 不適切な値を渡すと、フィールドグループが正しく表示されない場合があります。