add_query_arg Add a custom query argument to generate a new URL

Posted in:
Update time:2020-10-27

函数功能描述

给一个 URL 添加新的查询参数获取新的 URL。

我们可以使用此功能重建URL,或添加新的查询参数到URL,也可以获取带查询参数的完整URL。

添加一个键值对或者一个关联数组,设置键的值为假可以出URL移除该查询字符串。用 $_SERVER 值省略旧的查询或 URI(第二或第三个参数)。

Instructions for use

// 参数为单独的字符串值
add_query_arg( $param1, $param2, $old_query_or_uri );

// 参数为 键 => 值对 数组
add_query_arg( array('key1' => 'value1', ...), $old_query_or_uri );

parameters

parametersdata typeRequired or notdescriptivedefault value
$param1整数|字符串|数字be新的查询字符串或数组not have
$param2整数|字符串|数字clogged新的查询字符串值,如果$param1是关联数组,此参数为原URLnot have
$old_query_or_uri字符串|布尔值clogged原查询字符串或URL$_SERVER[REQUEST_URI]

return value

新的URL查询字符串。

usage example

假设我们当前在WordPress页面: “http://blog.example.com/client/?s=word”…

// 下面将输出 '/client/?s=word&foo=bar'
echo add_query_arg( 'foo', 'bar' );

// 下面将输出 '/client/?s=word&foo=bar&baz=tiny'
$arr_params = array( 'foo' => 'bar', 'baz' => 'tiny' );
echo add_query_arg( $arr_params );

很多时候你可能发现你想使用下面的方法在你所在的当前页面添加查询参数,这中情况下,你可以使用你需要修改的URL作为最后一个参数。

// 下面将输出 'http://blog.example.com/2009/04/16/?hello=world'
echo add_query_arg( 'hello', 'world', 'http://blog.example.com/2009/04/16/' );

因为 get_permalink() 函数返回的是一个完整的URL,在需要修改文章页面时,你可以使用这个函数作为最后一个参数。

// 下面将输出添加查询字符串:?hello=there 后的 id 为 9 的文章的链接。
echo add_query_arg( 'hello', 'there', get_permalink(9) );

通过关联数组删除和添加查询字符串:

$query = 'http://example.com/link?foo=bar';
$new_query = add_query_arg( array('foo' => false, 'baz' => 'qux'), $query );
// 结果:http://example.com/link?baz=qux

related function

remove_query_arg

We offer WordPress Themes and Plugins Custom Development Services

This site has long undertaken WordPress themes, plugins, WooCommerce-based store mall development business. We have 10 years of experience in WordPress development, if you want to Developing Websites with WordPress, please contact WeChat: iwillhappy1314 or email: amos@wpcio.com for inquiries.

发表回复

Your email address will not be published. 必填项已用 * 标注

*