概要
wp_parse_id_list
関数は、IDのリストをパースするための便利な関数です。この関数は、コンマ区切りまたはスペース区切りの文字列から、個々のIDを抽出し、配列として返します。これにより、データベースからIDを扱う際や、複数のIDを安全に処理する場合に役立ちます。具体的には、以下のような機能を実装する際に利用されることが一般的です。
- 投稿やページのIDを扱う際
- カスタムタクソノミーのIDを処理する場合
- ユーザーIDを管理する時
- 複数の投稿を効率的に取得するため
- プラグインの設定を管理する際
- 特定のメタデータに基づくIDを取得する場合
- ループやクエリのパラメータを簡略化するため
- 固定ページやカスタム投稿タイプの表示を制御する際
構文
wp_parse_id_list( $ids );
パラメータ
$ids
(string) : パースするIDのリスト(コンマまたはスペースで区切られた)。
戻り値
- (array) : パースされたIDの配列。
関連する関数
使用可能なバージョン
この関数は、WordPress 2.1以降で使用可能です。
コアファイルのパス
この関数は、wp-includes/general.php
に含まれています。
サンプルコード
サンプル1:基本的なIDリストのパース
$ids_string = "1, 2, 3";
$ids_array = wp_parse_id_list($ids_string);
// $ids_array は [1, 2, 3] になります。
このサンプルは、コンマで区切られたIDの文字列を配列に変換します。
サンプル2:スペース区切りのIDリストをパース
$ids_string = " 4 5 6 ";
$ids_array = wp_parse_id_list($ids_string);
// $ids_array は [4, 5, 6] になります。
このサンプルは、スペースで区切られたIDをトリムして配列に変換します。
サンプル3:無効なIDをフィルタリング
$ids_string = "7, 8, invalid_id, 9";
$ids_array = wp_parse_id_list($ids_string);
// $ids_array は [7, 8, 9] になります(invalid_idは無視されます)。
このサンプルでは、無効なIDがスキップされることを示しています。
サンプル4:空の文字列をパース
$ids_string = "";
$ids_array = wp_parse_id_list($ids_string);
// $ids_array は [] になります。
このサンプルは、空の文字列を与えた場合に返される空の配列を示しています。
サンプル5:カスタムクエリでの使用
$ids_string = "10, 11, 12";
$args = array(
'post__in' => wp_parse_id_list($ids_string),
'orderby' => 'post__in'
);
$query = new WP_Query($args);
// ID 10, 11, 12 の投稿を取得したクエリが実行されます。
このサンプルは、wp_parse_id_list
を使ってカスタムクエリを構成する方法を示しています。
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | 〇 |
registered_post_type | 〇 |
plugins_loaded | 〇 |
wp_roles_init | 〇 |
setup_theme | 〇 |
after_setup_theme | 〇 |
set_current_user | 〇 |
init | 〇 |
register_sidebar | 〇 |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
この関数は多くのアクションフックで使用される可能性があります。特に、データ処理が必要な場面で重宝します。
非推奨または削除されたバージョン
現在、この関数は非推奨または削除されたバージョンはありません。