説明
wp_filter_object_list() は、配列から条件に合う要素を抽出し、必要なフィールドだけを返す関数です。
基本構文
wp_filter_object_list( array $input_list, array $args = array(), string $operator = "and", string|false $field = false ): array
引数
$input_list:対象の配列$args:条件$operator:論理演算子(and/or/not)$field:取り出すフィールド
戻り値
抽出結果。
使い方(サンプル)
$list = wp_filter_object_list( $items, array( 'type' => 'a' ) );
注意点
wp_list_filter()とwp_list_pluck()を組み合わせた処理です。
実務での使いどころ
- オブジェクトの一覧を、条件で絞り込み、さらに、1つの項目だけを取り出すとき。
よくあるミスと対処
- 項目(
$field)を指定しないと、絞り込んだ、オブジェクトの一覧が返る。 - キー(添字)が、保持される。
- 条件の項目が、存在しない要素は、除外される。
NG例
$names = wp_filter_object_list( $terms, array( 'parent' => 0 ) ); // オブジェクトの一覧が返る
OK例
$names = wp_filter_object_list( $terms, array( 'parent' => 0 ), 'and', 'name' );
使い分け早見表
| 関数 | 役割 |
|---|---|
wp_filter_object_list() |
絞り込みと、項目の取り出しを、まとめて行う |
wp_list_filter() |
条件に合う要素だけを、残す |
wp_list_pluck() |
1つの項目だけを、取り出す |
関連項目
wp_list_filter()、wp_list_pluck()
公式リファレンス:wp_filter_object_list() | Function | WordPress Developer Resources

コメント