Функция SET_QUERY_VAR() в WordPress
Функция SET_QUERY_VAR() используется для установки значения переменной запроса в классе WP_Query. Эта функция особенно полезна, когда вы хотите передать данные в шаблон или изменить параметры запроса.
Скорость работы:
- 1 раз — 0.000015 сек (очень быстро)
- 50000 раз — 0.01 сек (световая скорость)
- Совместимо с PHP 7.0.2 и WP 4.4.1.
Не требует хуков.
Возвращаемое значение
Функция не возвращает ничего (null).
Использование
Чтобы использовать эту функцию, вам нужно передать два аргумента:
set_query_var( $query_var, $value );
- $query_var (строка) (обязательный) — ключ переменной запроса.
- $value (смешанный тип) (обязательный) — значение переменной запроса.
Примеры
Пример 1: Установить параметр запроса и затем получить его
// Устанавливаем
set_query_var( 'comments_per_page', 20 );
// Получаем
$var = get_query_var( 'comments_per_page' );
echo $var; // 20
Пример 2: Передача переменной в файл шаблона
Вы можете использовать эту функцию для передачи данных в файл шаблона, когда вы вызываете его с помощью функции get_template_part().
// При вызове шаблона с помощью get_template_part()
set_query_var( 'my_form_id', 23 );
get_template_part( 'my-form-template' );
В коде шаблона вы можете получить данные следующим образом:
// Внутри my-form-template.php
$my_form_id = get_query_var('my_form_id');
Начиная с версии WP 5.5, вы можете передавать данные в файл шаблона через третий параметр функции get_template_part().
Примечания
- Глобальная переменная:
$wp_query— объект запроса WordPress.
Изменения
- С версии 2.2.0 — впервые была внедрена функция.
Код функции
Вот как выглядит код функции set_query_var() в WordPress 6.7.2:
function set_query_var( $query_var, $value ) {
global $wp_query;
$wp_query->set( $query_var, $value );
}
Связанные функции
Вот некоторые функции, которые могут быть полезны при работе с запросами в WordPress:
esc_sql()get_boundary_post()get_children()get_page_by_title()get_pages()get_posts()get_queried_object()get_queried_object_id()get_query_var()have_posts()query_posts()rewind_posts()setup_postdata()wp()wp_get_recent_posts()WP_Query()wp_reset_query()wp_reset_vars()
Эти функции позволяют управлять запросами и получать необходимую информацию из базы данных WordPress.