wp_list_pluck() の使い方|説明・引数・注意点

説明

wp_list_pluck() は、配列(オブジェクトの配列)から、特定のフィールドだけを抜き出した配列を返す関数です。

基本構文

wp_list_pluck( array $input_list, int|string $field, int|string $index_key = null ): array

引数

  • $input_list:対象の配列
  • $field:取り出すフィールド
  • $index_key:新しい配列のキーにするフィールド

戻り値

抜き出した値の配列。

使い方(サンプル)

$ids = wp_list_pluck( get_posts(), 'ID' );

注意点

  • 投稿の配列からIDやタイトルだけを取り出すときに便利です。

実務での使いどころ

  • オブジェクトや配列の一覧から、1つの項目だけを、取り出すとき(ID の一覧、名前の一覧など)。
  • get_terms() や get_posts() の結果から、IDの配列を作るとき。

よくあるミスと対処

  • foreach で、自分で組み立てている。この関数なら、1行で書ける。
  • 存在しない項目を指定し、結果が、空になる。項目名を、確認する。
  • キー(添字)が、保持されることを、考えていない。連番にしたいときは、array_values() を通す。

NG例

$ids = array();
foreach ( $posts as $post ) {
	$ids[] = $post->ID; // 毎回、ループを書いている
}

OK例

$ids = wp_list_pluck( $posts, 'ID' );

使い分け早見表

関数 役割
wp_list_pluck() 1つの項目だけを、取り出す
wp_list_filter() 条件に合う要素だけを、残す
wp_filter_object_list() 絞り込みと、項目の取り出しを、まとめて行う

関連項目

wp_filter_object_list()、wp_list_filter()

公式リファレンス:wp_list_pluck() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました