remove_query_arg()WP 1.5.0

Удаляет указанные параметры GET запроса из URL: ?parametr=value&param2=val2.

Работает на основе: add_query_arg()
1 раз — 0.000055 сек (очень быстро) | 50000 раз — 0.19 сек (очень быстро) | PHP 7.1.5, WP 4.8.2

Хуков нет.

Возвращает

Строку. Новый обработанный URL.

Использование

remove_query_arg( $key, $query );
$key(строка/массив) (обязательный)
Параметр или параметры запроса которые нужно удалить из URL.
$query(логический)
URL, строка которую нужно обработать, из которой нужно удалить указанные в первом параметре параметры запроса. По умолчанию используется текущий запрос: $_SERVER['REQUEST_URI'].
По умолчанию: false

Примеры

0

#1 Удаление нескольких параметров запроса из УРЛ

Предположим мы передаем параметры запроса: remove_recomend и post_id, обрабатываем их и затем нам нужна ссылка без этих параметров, чтобы использовать её дальше в коде:

// используется $_SERVER['REQUEST_URI'] и переданные параметры запроса

// удаляем, теперь уже не нужные, параметры
$page_url = remove_query_arg( 
	array( 'remove_recomend', 'post_id' )
);

// Используем очищенную от параметров переменную $page_url

echo esc_url( $page_url );
0

#2 Удалим параметры запроса из указанного URL

$url = 'http://blog.example.com/2009/?hello=world&foo=bar';
echo remove_query_arg( 'hello', $url );
//> http://blog.example.com/2009/?foo=bar

Список изменений

С версии 1.5.0 Введена.

Код remove_query_arg() WP 6.5.2

function remove_query_arg( $key, $query = false ) {
	if ( is_array( $key ) ) { // Removing multiple keys.
		foreach ( $key as $k ) {
			$query = add_query_arg( $k, false, $query );
		}
		return $query;
	}
	return add_query_arg( $key, false, $query );
}