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(), который являетсяhave_posts(), который возвращаетTRUEесли в запросе возвращены сообщения -
the_post(), который превращает винтики в цикл -
setup_postdata(), которая устанавливает глобальную переменную$post -
rewind_posts(), который очищает текущий цикл -
wp_reset_postdata(), которая сбрасывает глобальную переменную$post -
wp_reset_query(), который сбрасывает весь запрос -
is_main_query(), который проверяет, является ли текущий запрос основным (и является ли он другимis_main_query()) -
in_the_loop(), которая проверяет, находимся ли мы в цикле (и является еще однимin_the_loop())
Часть 4: Связанные фильтры и действия
Эта часть, которую я написал, была одновременно раздражающей и полезной. Это было неприятно, потому что это заняло больше времени на исследования, но это было очень полезно, потому что, ну, я многому научился. (Советы по обучению: напишите учебник по теме, о которой вы мало знаете!)
Каждый WP_Query связанный с WP_Query был (в некотором роде) о командах SQL, которые выполняют запрос — большинство из них фильтруют различные предложения, такие как LIMIT , WHERE или DISTINCT . Три действия, с другой стороны, служат различным целям:
- Действие
pre_get_postsвмешивается в запрос перед его выполнением. - Действие
parse_queryобрабатывает синтаксический анализ запроса. - Действие
the_postизменяет объект post.
Часть 5. Свойства и методы.
В этой части, которую я написал, мы рассмотрели свойства и методы класса WP_Query . («Свойства» и «методы» — это просто «переменные» и «функции» внутри класса PHP.) Изученные нами свойства (переменные):
-
$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()
Части с 6 по 12: Аргументы класса WP_Query
В следующих семи частях Рэйчел проделала фантастическую работу, объясняя все аргументы, которые мы можем использовать с классом WP_Query , с небольшими примерами:
- Часть 6: Аргументы — страницы, сообщения и типы сообщений
- Часть 7. Аргументы — категории и теги
- Часть 8: Аргументы — Таксономии
- Часть 9: Аргументы — пользовательские поля
- Часть 10. Аргументы — дата
- Часть 11: Аргументы — пост-статус, нумерация страниц и порядок
- Часть 12. Аргументы : автор, поиск, пароль, разрешения, поля кэширования и возврата
Часть 13: 10 полезных примеров WP_Query
В этой части я позволил себе просмотреть различные примеры с использованием класса WP_Query и связанных с ним функций. (Я также привел быстрый пример, чтобы напомнить вам, как создать цикл с WP_Query .) Примеры были о:
- перечисление авторских постов в текущем году
- создание «Последние сообщения из этой категории», которая исключает текущее сообщение
- составление списка «Самые популярные сообщения», упорядоченного по количеству комментариев
- создание простого слайдера
- показ случайной цитаты на боковой панели
- список товаров в ценовом диапазоне
- создание шорткода для отображения поста внутри поста
- список текущих запланированных сообщений (с выдержками, если хотите)
- отображение раздела «Сообщение из года назад сегодня»
- показывая детей текущей страницы
Я должен признать, что это была самая забавная часть, над которой я работал!
Часть 14. Комбинирование WP_Query с основным запросом.
Эта часть, написанная Рэйчел, рассказывает нам о комбинировании класса WP_Query с основным запросом. Это очень интригующая тема, но я должен привести здесь несколько спойлеров — в этой части Рэйчел привела три замечательных примера:
- Первый пример касался отображения только сообщений одного типа в архиве категорий.
- Второй пример был о получении постов (возвращаемых основным запросом) по типу поста и перечислении постов, разделенных по типу поста, но в одном листинге.
- Третий пример — разделение основного запроса на два пользовательских запроса.
Части с 15 по 18: Спутники класса WP_Query
Знаете ли вы, что существуют классы, которые работают как класс WP_Query чтобы помочь WP_Query ? В следующих частях Рэйчел и я говорили о:
- освоение
WP_User_Queryв части 15 - освоение
WP_Comment_Queryв части 16 - освоение
WP_Meta_QueryиWP_Date_Queryв части 17
Часть 18: Улучшения запросов в WordPress 4.1
В этой части Рэйчел рассказала об улучшениях системы запросов WordPress в версии 4.1, таких как вложенные запросы, параметры комментариев и общее исправление ошибок. Это нежная часть, легкое чтение до конца.
Часть 19: Конец
Как сказал Оракул в «Матричных революциях»: у всего, что имеет начало, есть конец.
Это была долгая поездка, и, как я сказал в начале, это одна из самых длинных серий в истории Tuts +. Я объединил усилия с Рэйчел МакКоллин, одним из лучших инструкторов в Tuts +, и мы оба гордимся тем, что написали самую длинную, самую всеобъемлющую и самую эпическую серию учебников по классу WP_Query и его компаньонам.
Мы очень усердно работали над сериалом, и мы очень надеемся, что вам понравилось все это. Если вы узнали что-то новое в этой серии из 19 частей, то мы рады, что проделали хорошую работу.
Если у вас есть какие-либо комментарии к этой серии, не стесняйтесь поделиться своими мыслями в разделе комментариев ниже. И, как всегда, если вам понравилась серия, не забудьте поделиться этой заключительной частью с друзьями в качестве индекса.
Ура!