Ця стаття належить до серії статей, присвяченій вивченню класу WP_Query.
Раді вітати вас у завершальній статті з цієї серії. Сподіваємося, вам вона сподобалася. Давайте підсумуємо те, чого ми навчилися по ходу серії.
Частина 1: Вступ
У цій публікації ми розповіли вам про те:
- Що таке WP_Query;
- Як використовувати WP_Query, і чому нам слід вибирати саме цей клас серед інших доступних методів роботи з довільними запитами;
- Які підводні камені існують при роботі з WP_Query.
Частина 2: Вивчаємо WP_Query: Використовуємо цикли
Друга стаття з серії була присвячена створенню циклів за допомогою класу WP_Query. У ній ми дізналися:
- Що таке цикл в WordPress і де він використовується;
- Структура циклів в WordPress (з відмінним прикладом);
- Запуск додаткових циклів за допомогою класу WP_Query.
Частина 3: Пов’язані функції
Ця частина була присвячена 13 функцій, які взаємодіють з WP_Query. Ми розглянули наступні функції:
- get_query_var() — отримує змінні публічного запиту;
- query_posts(), змінює основний цикл, і якою краще не користуватися;
- get_post() — повертає запис, з якої ви збираєтеся працювати;
- get_posts() — отримує запису і повертає їх у вигляді масиву;
- get_pages() — за тим же принципом повертає сторінки;
- have_posts() – умовний тег, який повертає значення true, якщо запит виявив якісь записи;
- the_post() – індексує змінну поста в циклі;
- setup_postdata() — встановлює змінну $post;
- rewind_posts() — очищає поточний цикл;
- wp_reset_postdata() — повертає глобальну змінну $post;
- wp_reset_query() — повертає весь запит;
- is_main_query() — перевіряє, чи є поточний запит основним (і також є умовним тегом);
- in_the_loop() — перевіряє, чи знаходимося ми в межах циклу (і також є умовним тегом).
Частина 4: Дії і фільтри
Кожен фільтр, пов’язаний з WP_Query взаємопов’язаний з SQL-командами, які запускають запит. Більшість з них фільтрують різні команди: LIMIT, WHERE або DISTINCT. Є три дії, які можна використовувати в наступних цілях:
- Дія pre_get_posts взаємодіє із запитом до запуску;
- Дія parse_query реалізує парсинг запиту;
- Дія the_post змінює об’єкт post.
Частина 5: Властивості і методи
У цій частині ми пройшлися по властивостей і методів класу WP_Query. Ми познайомилися з наступними властивостями:
- $query;
- $query_vars;
- $queried_object;
- $queried_object_id;
- $posts;
- $post_count;
- $found_posts;
- $max_num_pages;
- $current_post;
- $post;
- ще 25 властивостей, які починаються з $is_, і працюють за типом умовних позначок.
З наступними методами:
- init();
- parse_query();
- parse_query_vars();
- get();
- set();
- &get_posts();
- next_post();
- the_post();
- have_posts();
- rewind_posts();
- &query();
- get_queried_object();
- get_queried_object_id();
Протягом наступних 7 частин ми розглядали аргументи, які можна використовувати разом з класом WP_Query:
Частина 6: Аргументи WP_Query: сторінки, запису та типи записів.
Частина 7: Аргументи WP_Query: рубрики та теги.
Частина 8: Аргументи WP_Query: таксономії.
Частина 9: Аргументи WP_Query: довільні поля.
Частина 10: Аргументи WP_Query: дата.
Частина 11: Аргументи WP_Query: статус, порядок та пагинация.
Частина 12: Аргументи WP_Query: автори, пошук, паролі, права доступу, кешування і повернення паролів.
Частина 13: 10 корисних прикладів
У цій частині ми вирішили представити різні приклади використання класу WP_Query і пов’язаних з ним функцій:
- висновок записів автора за поточний рік;
- створення списку самих свіжих записів із заданої категорії;
- розробка списку «найпопулярніше» з сортуванням за кількістю коментарів;
- створення простого слайдера;
- висновок випадкової цитати в бічній панелі;
- перелік продукції з певної цінової категорії;
- створення шорткода для відображення запису всередині запису;
- перелік запланованих до публікації записів;
- відображення запису, яка публікувалася в цей день рік тому;
- відображення дочірніх сторінок для поточної сторінки.
Частина 14: Комбінуємо WP_Query і основний запит
У цій статті розповідається про те, яким чином можна використовувати клас WP_Query з основним запитом. У статті наводиться три приклади:
- Перший приклад був присвячений відображенню записів тільки одного типу на сторінці архіву категорії;
- У другому прикладі розповідається, як отримати запису (отримані з допомогою основного запиту) різних типів і відобразити їх окремо, але в одному списку;
- Третій приклад показує, як розділити основний запит на два довільних.
Частини 15-17: допоміжні класи для WP_Query
Чи знаєте ви про те, що разом з WP_Query можна використовувати ще три різних класи? В цих частинах серії ми розповіли про:
- Частину 15: WP_User_Query;
- Частина 16: WP_Comment_Query;
- Частина 17: WP_Meta_Query і WP_Date_Query.
Частина 18: Вдосконалення запитів в сучасних версіях WordPress
У цій статті розповідається про поліпшення, які система запитів зазнала у версії WordPress 4.1: вкладені запити, параметри для коментарів, а також виправлення помилок.
Частина 19: Завершення
Сподіваємося, вам сподобалися наші матеріали, і ви поділіться ними з друзями. Хочеться вірити, що з них ви дізналися багато нового, і обов’язково зможете застосувати ці знання на практиці.
Переклад статті «Mastering WP_Query: Series Finale» був підготовлений дружною командою проекту Сайтостроение від А до Я.