Ограничиваем статусы перечислением и разбираем readonly-классы PHP 8.2+ на модели каталога.
Превращаем массив книги в класс с конструктором, приватными свойствами и понятными методами, не усложняя проект наследованием.
Создаём composer.json, настраиваем PSR-4 и подключаем собственные классы автоматически вместо цепочки require.
Выносим повторяющиеся правила в функции, задаём типы параметров и результатов и отделяем вычисления от вывода.
Представляем книгу ассоциативным массивом, храним каталог списком и применяем array_filter(), array_map() и usort().
Показываем нужные книги через if, match и foreach, считаем прочитанное и разбираем понятные правила ветвления.
Разбираем типы PHP на данных книги: строки, числа, bool и null. Учимся писать функции с типами и не путать ноль с отсутствующим значением.
Ставим PHP 8.5, запускаем локальный сервер и создаём основу каталога книг. Учитываем актуальные исправления безопасности на октябрь 2026 года.
Фильтруем книги по числовому полю ACF, сортируем их по цене и выводим список через WP_Query с корректным сбросом контекста.
Сохраняем определения групп ACF в JSON, добавляем их в Git и синхронизируем изменения между локальной, тестовой и рабочей копиями.
Настраиваем повторяющиеся строки для глав и выводим их через have_rows(), the_row() и get_sub_field(). Разбираем, где нужен ACF PRO.
Создаём отдельный тип записей «Книги», подключаем к нему группу ACF и настраиваем архив, редактор блоков и адреса страниц.