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

説明

wp_parse_args() は、配列やクエリ文字列を、既定値の配列とマージする関数です。

基本構文

wp_parse_args( string|array|object $args, array $defaults = array() ): array

引数

  • $args:ユーザーが指定した引数
  • $defaults:既定値

戻り値

マージ後の配列。

使い方(サンプル)

$opts = wp_parse_args( $args, array( 'limit' => 10 ) );

注意点

  • 関数の引数オプションの扱いで定番のパターンです。

実務での使いどころ

  • 関数の引数(設定の配列)に、既定値を足すとき。
  • クエリ文字列(a=1&b=2)を、配列に変えるとき。

よくあるミスと対処

  • 引数の順番を、逆にしている。第1引数が、渡された値、第2引数が、既定値。
  • 配列の中の配列まで、マージされると考えている。マージは、1段目だけ。
  • オブジェクトや、文字列を渡したときの、動作を知らない。

NG例

$args = wp_parse_args( $defaults, $args ); // 順番が逆で、既定値が、渡された値を上書きする

OK例

$args = wp_parse_args( $args, array(
	'number'  => 10,
	'orderby' => 'date',
) );

使い分け早見表

やりたいこと 使うもの
既定値と、渡された値を、まとめる wp_parse_args()
URLを、部品に分ける wp_parse_url()
URLに、パラメータを追加する add_query_arg()

関連項目

wp_parse_url()、shortcode_atts()

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

コメント

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