wp()
Встановлює основний запит (середа WordPress).
Що саме робить wp() ?
встановлює чи перевизначає глобальні змінні: $wp_query , $wp_the_query;
встановлює header заголовок (у тому числі “помилка 404”);
створює запит до бази даних, з урахуванням переданих аргументів (параметр $query_vars ), результатами запиту заповнює глобальні змінні;
встановлює глобальні змінні, такі як $query_string , $posts, $post , $request , $more і $single (для is_author() ) і всі змінні $wp_query :
Функція працює на основі класу WP {}
Для кращого розуміння, як працює ця функція, прочитайте опис хука request
wp() можна використовувати, щоб повністю переписати основний запит WordPress. Тобто. виклик функції з параметрами змінить безліч глобальних змінних і $wp_query у тому числі, а значить зміниться основний цикл виводу.
Не рекомендую використовувати функцію, якщо ви не впевнені, що робите. Для зміни основного циклу є wp_reset_query() . У випадку wp() зробити це вже не вийде.
Наприкінці роботи функції спрацьовує хук-подія wp .
WP::main()
Хуків немає.
Повертає
null
. Нічого не вертає.
Використання
wp($query_vars);
-
$query_vars
(рядок/масив) -
Параметри запиту. Приймає ті самі параметри як і
WP_Query .
За замовчуванням: Параметри за замовчуванням
Приклади
#1 Демонстрація роботи
Припустимо, що ми маємо постійну сторінку. На початку коду сторінки викличемо функцію так:
<?php wp('author=1&orderby=title&order=ASC'); ?>
Далі йде стандартне виведення циклу.
У результаті циклі будуть виведені пости автора з ID = 1, відсортовані по заголовку записи.
Також на цій сторінці буде спрацьовувати умовний тег is_single() .
нотатки
- Global. WP. $wp Current WordPress environment instance.
- Global. WP_Query. $wp_query WordPress Query object.
- Global. WP_Query. $wp_the_query Copy of WordPress Query object.
список змін
З версії 2.0.0 | Введено. |
Код wp() wp WP 6.0.2
function wp( $query_vars = '' ) { Global $wp, $wp_query, $wp_the_query; $wp->main($query_vars); if ( ! isset( $wp_the_query ) ) { $wp_the_query = $wp_query; } }