add_query_arg():URL に ?key=value を足す(WordPress)

URL に ?key=value の形のパラメーターを足したり、値を替えたりします。もう同じ名前があれば上書きします。

書き方

add_query_arg( string $key, string $value, string $url = '' ): string
add_query_arg( array $args, string $url = '' ): string
  • $key・$value:足す名前と値(1 つだけのとき)
  • $args:名前と値の配列(いくつも足すとき)
  • $url(省略できる):もとの URL。省略すると、今開いているページの URL を使います。

使い方の例

// https://example.com/list/?page=2&sort=new
$url = add_query_arg( array(
	'page' => 2,
	'sort' => 'new',
), home_url( '/list/' ) );

echo '<a href="' . esc_url( $url ) . '">次へ</a>';

// 値に日本語や記号が入るときは自分でエンコードする
$url = add_query_arg( 'q', rawurlencode( $keyword ), home_url( '/search/' ) );

よくある間違い

  • そのまま出力する:$url を省略すると今の URL をもとにするので、URL に入っていた文字が混ざります。出すときは必ず esc_url() を通します。
  • 値をエンコードしない:値は自動ではエンコードされません。日本語・&・# などが入る値は rawurlencode() してから渡します。
  • よそのサイトの URL に内部の値を付ける:外のサイトへ渡す URL に、自分のサイトの ID などを付けないようにします。
  • パラメーターを消すときは remove_query_arg() です。

関連する関数

  • remove_query_arg():パラメーターを消す
  • esc_url():URL を安全にする
  • home_url():サイトのトップの URL を作る

逆引きリファレンスの一覧へ

サイドバー

よく使うカスタマイズ

最近の記事

  1. Fstyle Final Output Replacer のルールの一覧(generator タグを消す 2 つのルール)

Profile

PAGE TOP