WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Авторские Темы для WordPress

get_query_var() WP 1.5

Получает переменные запроса (параметры запроса) из WP_Query, который устанавливается в глобальную переменную $wp_query.

Чтобы установить переменную запроса, используйте set_query_var()

Работает на основе: WP_Query::get()
1 раз — 0.000021 сек (очень быстро) | 50000 раз — 0.06 сек (скорость света)

Хуков нет.

Возвращает

Разное. Различные значение переменных.

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

$var = get_query_var( $var );
$var(строка) (обязательный)
Ключ переменной, которую нужно получить.
$default(строка)
Значение, которое нужно вернуть, если запрашиваемый параметр не установлен.
По умолчанию: ''

Примеры

#1. Получим текущий номер страницы пагинации:

$paged = get_query_var('paged') ? get_query_var('paged') : 1;

echo 'Мы находимся на странице: '. $paged;

#1.2. Текущий номер страницы пагинации на главной странице

Чтобы получить текущий номер пагинации на главной странице (она указана как статическая, используется шаблон страницы), нужно использовать ключ page:

$paged = (get_query_var('page')) ? get_query_var('page') : 1;
echo "Мы на странице:". $paged ." на главной странице блога, указанной как статическая.

#2. Запрос поиска

Получим запрос, который был введен в строку поиска, на странице результатов поиска:

$search_query= get_query_var('s');
echo "По запросу '$search_query' ничего не найдено.";

#2.1. Запрос поиска по словам

Или мы можем получить поисковой запрос отдельно по словам, записываются они в переменную search_terms:

$search_terms = get_query_var('search_terms');
print_r($search_terms);

Если запрос был "красивые картинки", то получим:

Array(
	[0] => красивые 
	[1] => картинки
)

Список всех ключей в get_query_var('ключ').

Некоторые значения заполняются на соответствующих страницах. Например, мы не можем получить параметры запроса search_terms или s, если будем получать их не на странице поиска - эти параметры на всех страницах, кроме поиска будут пустыми.

cpage             — Страница комментариев
paged             — Пагинация
s                 — Запрос поиска
search_terms      — Слова поиска array()
page              — 0
pagename          — Например, если страница называется "Страница", то будет - stranica
error
post_parent
attachment
attachment_id
name              — Название поста
static
page_id           — 0
category_name     — Uncategorized
tag
cat
taxonomy
tag_id
meta_key
meta_value
author_name
preview
post_type
posts_per_page    — 10
comments_per_page — 10
order             — DESC
second
minute
hour
day               — 0
monthnum          — 0
year              — 0

// и еще

subpost
subpost_id
w          — 0
sentence
fields
menu_order
feed
m          — 0
p          — 0
tb
ignore_sticky_posts
suppress_filters
cache_results
update_post_term_cache — 1
update_post_meta_cache — 1
nopaging
no_found_rows
category__in     — Array()
category__not_in — Array()
category__and    — Array()
post__in         — Array()
post__not_in     — Array()
tag__in          — Array()
tag__not_in      — Array()
tag__and         — Array()
tag_slug__in     — Array()
tag_slug__and    — Array()

Заметки

  • Global. WP_Query. $wp_query WordPress Query object.

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

С версии 1.5.0 Введена.
С версии 3.9.0 The $default argument was introduced.

Код get_query_var() WP 5.7.2

<?php
function get_query_var( $var, $default = '' ) {
	global $wp_query;
	return $wp_query->get( $var, $default );
}

Из метки: query (запрос)

Еще из раздела: Основной запрос WP

15 комментов
Полезные 2 Вопросы 2 Все
    Войти